@jrc03c/make-key 0.0.27 → 0.0.29

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/bin.js CHANGED
@@ -1,33 +1,31 @@
1
1
  #!/usr/bin/env node
2
- const { exec } = require("child_process")
3
- const makeKey = require("./src/index.js")
2
+ import { exec } from "node:child_process"
3
+ import makeKey from "./src/index.js"
4
4
 
5
- if (typeof require !== "undefined" && require.main === module) {
6
- const args = process.argv.slice(2)
5
+ const args = process.argv.slice(2)
7
6
 
8
- if (args.length === 0) {
9
- console.log("You must specify a key length.")
10
- process.exit(0)
11
- }
7
+ if (args.length === 0) {
8
+ console.log("You must specify a key length.")
9
+ process.exit(0)
10
+ }
12
11
 
13
- const keyLength = parseInt(args[0])
14
- let keySeed, charset
12
+ const keyLength = parseInt(args[0])
13
+ let keySeed, charset
15
14
 
16
- if (args.length === 2) {
17
- if (!isNaN(parseInt(args[1]))) {
18
- keySeed = parseInt(args[1])
19
- } else {
20
- charset = args[1]
21
- }
22
- } else if (args.length > 2) {
15
+ if (args.length === 2) {
16
+ if (!isNaN(parseInt(args[1]))) {
23
17
  keySeed = parseInt(args[1])
24
- charset = args[2]
18
+ } else {
19
+ charset = args[1]
25
20
  }
21
+ } else if (args.length > 2) {
22
+ keySeed = parseInt(args[1])
23
+ charset = args[2]
24
+ }
26
25
 
27
- const key = makeKey(keyLength, keySeed, charset)
28
- console.log(key)
26
+ const key = makeKey(keyLength, keySeed, charset)
27
+ console.log(key)
29
28
 
30
- try {
31
- exec(`echo -n "${key}" | xsel -b`, () => {})
32
- } catch (e) {}
33
- }
29
+ try {
30
+ exec(`echo -n "${key}" | xsel -b`, () => {})
31
+ } catch (e) {}
package/dist/make-key.js CHANGED
@@ -1,4 +1,4 @@
1
- (()=>{var kc=Object.defineProperty;var Jc=(t,e,r)=>e in t?kc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var Or=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var c=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var ft=(t,e,r)=>(Jc(t,typeof e!="symbol"?e+"":e,r),r);var Z=c((hb,Tr)=>{var Rc=new Function(`
1
+ var Jn=Object.defineProperty,zn=(e,n,t)=>n in e?Jn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Ye=(e,n,t)=>(zn(e,typeof n!="symbol"?n+"":n,t),t),Rn=new Function(`
2
2
  try {
3
3
  return this === window
4
4
  } catch(e) {}
@@ -8,13 +8,13 @@
8
8
  } catch(e) {}
9
9
 
10
10
  return false
11
- `),ht=class extends Error{constructor(e){Rc()?super(e):super(`
11
+ `),Cn=class extends Error{constructor(e){Rn()?super(e):super(`
12
12
 
13
13
  \x1B[31m`+e+`
14
- \x1B[0m`)}};Tr.exports=ht});var d=c((mb,_r)=>{var Yc=Z();_r.exports=function(t,e){if(!t)throw new Yc(e)}});var q=c((db,Dr)=>{function Kc(t){return t===null||typeof t>"u"}Dr.exports=Kc});var xr=c((pb,Ir)=>{Ir.exports=[Array,ArrayBuffer,BigInt64Array,BigUint64Array,Float32Array,Float64Array,Int16Array,Int32Array,Int8Array,Uint16Array,Uint32Array,Uint8Array,Uint8ClampedArray]});var p=c((gb,Er)=>{var $c=q(),Ar=xr(),Lc=Ar.map(t=>t.name);function Gc(t){try{return t instanceof Array?!0:$c(t.constructor)?!1:Ar.indexOf(t.constructor)>-1||Lc.indexOf(t.constructor.name)>-1}catch{return!1}}Er.exports=Gc});var b=c((yb,Fr)=>{function Vc(t){try{return!!t._symbol&&t._symbol===Symbol.for("@jrc03c/js-math-tools/dataframe")}catch{return!1}}Fr.exports=Vc});var D=c((qb,jr)=>{function Wc(t){return typeof t=="function"}jr.exports=Wc});var g=c((bb,Mr)=>{function Hc(t){return typeof t=="number"&&!isNaN(t)||typeof t=="bigint"}Mr.exports=Hc});var J=c((Nb,Br)=>{var Xc=p(),Qc=q();function Zc(t){return typeof t=="object"&&!Qc(t)&&!Xc(t)}Br.exports=Zc});var y=c((vb,Ur)=>{function el(t){try{return!!t._symbol&&t._symbol===Symbol.for("@jrc03c/js-math-tools/series")}catch{return!1}}Ur.exports=el});var fe=c((wb,Cr)=>{var tl=d(),Pr=p(),rl=b(),nl=D(),mt=g(),zr=J(),sl=y();function dt(t,e){if(rl(t)){let i=dt(t.values,e);return i.length>0&&mt(i[0])&&i[0]>=0&&i[0]<t.index.length&&(i[0]=t.index[i[0]]),i.length>1&&mt(i[1])&&i[1]>=0&&i[1]<t.columns.length&&(i[1]=t.columns[i[1]]),i}if(sl(t)){let i=dt(t.values,e);return i.length>0&&mt(i[0])&&i[0]>=0&&i[0]<t.index.length&&(i[0]=t.index[i[0]]),i}if(tl(zr(t)||Pr(t),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `indexOf` function!"),!nl(e)){let i=e;e=o=>o===i}function r(i,o,u){if(u=u||[],u.indexOf(i)>-1)return null;if(zr(i)){u.push(i);let a=Object.keys(i).concat(Object.getOwnPropertySymbols(i));for(let l=0;l<a.length;l++){let f=a[l],h=i[f];if(o(h))return[f];let m=r(h,o,u);if(m&&m.length>0)return[f].concat(m)}}else if(Pr(i)){u.push(i);for(let a=0;a<i.length;a++){let l=i[a];if(o(l))return[a];let f=r(l,o,u);if(f&&f.length>0)return[a].concat(f)}}else if(o(i))return[];return null}function n(i){try{return e(i)}catch{return!1}}let s=r(t,n);return s&&s.length>0?s:null}Cr.exports=dt});var U=c((Sb,Yr)=>{var il=fe(),kr=p(),Jr=b(),Rr=y();function he(t){function e(r){if(typeof r=="object"){if(r===null)return null;if(kr(r))return r instanceof Array?r.map(s=>he(s)):r.slice();if(Rr(r)){let s=r.copy();return s.values=he(s.values),s}if(Jr(r)){let s=r.copy();return s.values=he(r.values),s}if(r instanceof Date)return new Date(r.getTime());r=pt(r);let n={};return Object.keys(r).concat(Object.getOwnPropertySymbols(r)).forEach(s=>{n[s]=he(r[s])}),n}else return r}return e(pt(t))}function pt(t){function e(s,i,o){if(i=i||[],o=o||"",i.indexOf(s)>-1){let u=o.split("/").slice(o.startsWith("/")?1:0);if(u.some((l,f)=>{let h=u.slice(0,u.length-f-1),m=r;return h.forEach(N=>{m=m[N]}),m===s}))return`<reference to "${r===s?"/":"/"+il(r,s).join("/")}">`}return typeof s=="object"?s===null?null:(i.push(s),kr(s)?typeof s.constructor<"u"&&s.constructor.name!=="Array"?s.slice():s.map((u,a)=>e(u,i,o+"/"+a)):(Object.keys(s).concat(Object.getOwnPropertySymbols(s)).forEach(u=>{s[u]=e(s[u],i,o+"/"+u.toString())}),s)):s}let r=t,n=e(r);if(Jr(t)){let s=t.copy();s._values=n.values,s._columns=n.columns,s._index=n.index,n=s}if(Rr(t)){let s=t.copy();s.name=n.name,s._values=n.values,s._index=n.index,n=s}return n}Yr.exports={copy:he,decycle:pt}});var De=c((Ob,Lr)=>{var ol=d(),Kr=p(),ul=b(),al=y();function $r(t){if(ul(t)||al(t))return $r(t.values);ol(Kr(t),"The `isNested` function only works on arrays, Series, and DataFrames!");for(let e=0;e<t.length;e++)if(Kr(t[e]))return!0;return!1}Lr.exports=$r});var R=c((Tb,Vr)=>{var W=d(),cl=p(),ll=De(),fl=g(),hl=q(),ee="You must pass a natural number or a one-dimensional array of natural numbers into the `ndarray` function!";function Gr(t){W(!hl(t),ee),cl(t)||(t=[t]),W(!ll(t),ee),W(t.length>0,ee);let e=t[0];if(typeof e=="bigint"&&(e=Number(e)),W(fl(e),ee),W(e>=0,ee),W(Math.floor(e)===e,ee),W(e!==1/0,"We can't create an array containing an infinite number of values!"),t.length===1){let r=[];for(let n=0;n<e;n++)r.push(void 0);return r}else{let r=[];for(let n=0;n<e;n++)r.push(Gr(t.slice(1)));return r}}Vr.exports=Gr});var P=c((_b,Xr)=>{var ml=d(),Wr=p(),dl=b(),pl=y();function Hr(t){if(dl(t)||pl(t))return Hr(t.values);ml(Wr(t),"The `flatten` function only works on arrays, Series, and DataFrames!");function e(r){let n=[];return r.forEach(s=>{Wr(s)?n=n.concat(e(s)):n.push(s)}),n}return e(t)}Xr.exports=Hr});var me=c((Db,Zr)=>{var gl=d(),yl=P(),ql=p(),bl=b(),Nl=g(),vl=y();function Qr(t,e){if(bl(t)||vl(t))return Qr(t.values,e);gl(ql(t),"The `product` function only works on arrays, Series, and DataFrames!");try{if(t.length===0)return NaN;let r=yl(t),n=!1,s=1;for(let i of r){if(!Nl(i))if(e)i=1;else return NaN;typeof i=="bigint"&&(n=!0,i=Number(i)),s*=i}if(n)try{return BigInt(s)}catch{}return s}catch{return NaN}}Zr.exports=Qr});var gt=c((Ib,en)=>{var wl=g();function Sl(t){return wl(t)&&(t>=0?Math.floor(t)===t:Math.ceil(t)===t)}en.exports=Sl});var rn=c((xb,tn)=>{var Ol=gt();function Tl(t){return Ol(t)&&t>0}tn.exports=Tl});var w=c((Ab,un)=>{var _l=d(),nn=p(),Dl=b(),Il=y();function sn(t){if(nn(t)){let e=sn(t[0]);return[t.length].concat(e||[])}else return}function on(t){return Dl(t)||Il(t)?on(t.values):(_l(nn(t),"The `shape` function only works on arrays, Series, and DataFrames!"),sn(t))}un.exports=on});var Ie=c((Eb,ln)=>{var de=d(),an=P(),cn=p(),xl=b(),Al=rn(),El=g(),Fl=y(),jl=me(),Ml=w();function yt(t,e){if(xl(t)||Fl(t))return yt(t.values,e);if(de(cn(t),"The first argument passed into the `reshape` function must be an array!"),El(e)&&(e=[e]),de(cn(e),"The second argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),de(Ml(e).length===1,"The first argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),e=e.map(i=>(typeof i=="bigint"&&(i=Number(i)),de(Al(i),"The first argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),Number(i))),e.length===0)return an(t);let r=an(t);if(e.length===1&&e[0]===r.length)return r;de(jl(e)===r.length,"The new shape doesn't match the number of values available in `x` (the first argument passed into the `reshape` function)!");let n=[],s=Math.floor(r.length/e[0]);for(let i=0;i<e[0];i++){let o=r.slice(i*s,(i+1)*s);n.push(yt(o,e.slice(1)))}return n}ln.exports=yt});var H=c((Fb,yn)=>{var{copy:mn}=U(),Bl=d(),Ul=p(),Pl=g(),dn=q(),zl=R(),Cl=me(),kl=Ie(),pn=Math.pow(2,64),S=[];gn(Math.floor(Math.random()*pn));function Jl(t,e){t=I(t);function r(){t+=I("0x9e3779b97f4a7c15");let s=mn(t);return s=(s^s>>BigInt(30))*I("0xbf58476d1ce4e5b9"),s=(s^s>>BigInt(27))*I("0x94d049bb133111eb"),s^s>>BigInt(31)}let n=[];for(let s=0;s<e;s++)n.push(r());return n}function I(t){return BigInt.asUintN(64,BigInt(t))}function fn(t,e){return t=I(t),e=BigInt(e),I(I(t<<e)|I(t>>I(BigInt(64)-e)))}function gn(t){if(typeof t=="bigint"&&(t=Number(t)),dn(t))return mn(S);{Bl(Pl(t),"If passing a value into the `seed` function, then that value must be an integer!");let e=Jl(Math.floor(t),4);S[0]=e[0],S[1]=e[1],S[2]=e[2],S[3]=e[3]}}function hn(){let t=I(fn(S[0]+S[3],23)+S[0]),e=I(S[1]<<BigInt(17));return S[2]=I(S[2]^S[0]),S[3]=I(S[3]^S[1]),S[1]=I(S[1]^S[2]),S[0]=I(S[0]^S[3]),S[2]=I(S[2]^e),S[3]=fn(S[3],45),Math.floor(Number(t))/pn}function Rl(t){return dn(t)?hn():(Ul(t)||(t=[t]),kl(zl(Cl(t)).map(hn),t))}yn.exports={random:Rl,seed:gn}});var pe=c((jb,qn)=>{function Yl(t){return t instanceof Date&&t.toString()!=="Invalid Date"}qn.exports=Yl});var z=c((Mb,wn)=>{var{decycle:bn}=U(),Nn=p(),qt=pe(),vn=["number","int","float","bigint"];function Kl(t,e){function r(n,s){let i=typeof n,o=typeof s;if(i!==o&&!vn.includes(i)&&!vn.includes(o))return!1;if(i==="undefined")return!0;if(i==="boolean"||i==="symbol")return n===s;if(i==="number"||i==="bigint")try{let u=n.toString(),a=s.toString();return u===a}catch{return!1}if(i==="string"||i==="function")return n===s;if(i==="object"){if(n===null||s===null)return n===null&&s===null;{if(qt(n))return qt(s)?n.getTime()===s.getTime():!1;if(qt(s))return!1;if(n instanceof RegExp&&s instanceof RegExp)return n.toString()===s.toString();if(Nn(n)!==Nn(s))return!1;let u=Object.keys(n).concat(Object.getOwnPropertySymbols(n)),a=Object.keys(s).concat(Object.getOwnPropertySymbols(s));if(u.length!==a.length)return!1;for(let l=0;l<u.length;l++){let f=u[l];if(!r(n[f],s[f]))return!1}return!0}}}try{return r(t,e)}catch{return r(bn(t),bn(e))}}wn.exports=Kl});var Tn=c((Bb,On)=>{var $l=p(),Ll=b(),Gl=D(),Vl=y(),Sn=q();function ge(t){let e="abcdefg1234567890",r="";for(;r.length<t;)r+=e[Math.floor(Math.random()*e.length)];return r}var Wl=ge(16),Hl=ge(16),Xl=ge(16),Ql=ge(16),Zl=ge(16),bt=class{constructor(){this.clear()}get counts(){return this.values.map(e=>this.countsDict[e])}get values(){return Object.values(this.valuesDict)}clear(){return this.countsDict={},this.valuesDict={},this}count(e){for(let r of e)$l(r)?this.count(r):this.increment(r);return this}delete(e){let r=this.getStandardizedKey(e);return delete this.countsDict[r],delete this.valuesDict[r],this}get(e){return this.countsDict[this.getStandardizedKey(e)]||0}getStandardizedKey(e){return typeof e=="object"&&e===null?Wl:Sn(e)?Hl:Gl(e)?e.toString():typeof e=="symbol"?e.toString()+" - "+Zl:e===1/0?Xl:e===-1/0?Ql:typeof e=="bigint"?e.toString():Ll(e)?e.toJSONString():Vl(e)?JSON.stringify(e.toObject()):JSON.stringify(e)}has(e){return!Sn(this.countsDict[this.getStandardizedKey(e)])}increment(e){return this.set(e,this.get(e)+1)}set(e,r){let n=this.getStandardizedKey(e);return this.countsDict[n]=r,this.valuesDict[n]=e,this}toArray(){return this.values.map(e=>({value:e,count:this.countsDict[e]}))}toObject(){let e={};return this.values.forEach(r=>{e[r]=this.countsDict[r]}),e}};On.exports=bt});var A=c((Ub,_n)=>{var ef=Tn(),tf=P(),rf=g();function nf(t,e){e=e||{};let r=new ef,n={},s=tf(t),i=[],o=-1/0,u=1/0,a=!1,l=0;for(let h of s){if(typeof h=="bigint"&&(a=!0),!e.shouldDropNaNs||rf(h))try{h>o&&(o=h),h<u&&(u=h),l+=Number(h),i.push(h)}catch{o=NaN,u=NaN,l=NaN}r.increment(h)}let f=l/i.length;if(n.counts=r,n.max=o,n.mean=f,n.min=u,n.n=s.length,n.sum=l,isNaN(n.mean)&&(n.max=NaN,n.min=NaN),e.shouldDropNaNs&&(n.nWithoutNaNs=i.length),e.mode){let h=Array.from(r.values.map(O=>[O,r.get(O)])).toSorted((O,_)=>_[1]-O[1]),m=h[0][1],N=[];for(let O of h)if(O[1]==m)N.push(O[0]);else break;n.mode=N.toSorted()}if(e.median)if(isNaN(f))n.median=NaN;else{let h=i.toSorted((N,O)=>Number(N)-Number(O)),m=Math.floor(h.length/2);if(h.length%2===0){let N=h[m-1],O=h[m];if(n.median=(Number(N)+Number(O))/2,a&&typeof N=="bigint"&&typeof O=="bigint")try{n.median=BigInt(n.median)}catch{}}else n.median=h[m]}if(e.stdev||e.variance){let h=0;for(let N of i)h+=Math.pow(Number(N)-f,2);h/=i.length;let m=Math.sqrt(h);n.stdev=m,n.variance=h}if(a){try{n.sum=BigInt(n.sum)}catch{}try{n.mean=BigInt(n.mean)}catch{}e.mode&&(n.mode=n.mode.map(h=>{try{return BigInt(h)}catch{return h}}))}return n}_n.exports=nf});var xe=c((Pb,Dn)=>{var sf=z(),of=D(),uf=q(),af=A();function cf(t,e){let{counts:r}=af(t);return uf(e)||(of(e)?r.values.forEach(n=>{e(n)||r.delete(n)}):r.values.forEach(n=>{sf(n,e)||r.delete(n)})),r}Dn.exports=cf});var te=c((zb,xn)=>{var{decycle:lf}=U(),In=p(),ff=b(),hf=y();function Nt(t){if(ff(t)||hf(t))return Nt(t.values);if(In(t)){let e=!1,r=!1,n=null;for(let s of t){if(Nt(s))return!0;if(In(s)){if(n===null)n=s.length;else if(s.length!==n)return!0;e=!0}else r=!0;if(e&&r)return!0}}return!1}function mf(t){return Nt(lf(t))}xn.exports=mf});var ye=c((Cb,An)=>{var df=d(),pf=p(),gf=b(),yf=y();function vt(t){if(gf(t)||yf(t)){let r=t.copy();return r.values=vt(r.values),r.index=vt(r.index),r}df(pf(t),"The `reverse` function only works on arrays, Series, and DataFrames!");let e=[];for(let r=t.length-1;r>=0;r--)e.push(t[r]);return e}An.exports=vt});var E=c((kb,En)=>{var wt=d(),St=g(),Ot=q(),qf=ye();function bf(t,e,r=1){wt(!Ot(t)&&!Ot(e)&&!Ot(r),"You must pass two numbers and optionally a step value to the `range` function!"),wt(St(t)&&St(e)&&St(r),"You must pass two numbers and optionally a step value to the `range` function!"),wt(r>0,"The step value must be greater than 0! (NOTE: The step value is a magnitude; it does not indicate direction.)");let n=!1,s=typeof t=="bigint"||typeof e=="bigint"||typeof r=="bigint";if(t=Number(t),e=Number(e),r=Number(r),t>e){n=!0;let o=t;t=e+r,e=o+r}let i=[];for(let o=t;o<e;o+=r)if(s)try{i.push(BigInt(o))}catch{i.push(o)}else i.push(o);return n&&(i=qf(i)),i}En.exports=bf});var C=c((Jb,Bn)=>{var Nf=d(),vf=P(),wf=p(),Fn=b(),Sf=D(),jn=y(),Of=q();function qe(t){let e="abcdefg1234567890",r="";for(;r.length<t;)r+=e[Math.floor(Math.random()*e.length)];return r}var Tf=qe(256),_f=qe(256),Df=qe(256),If=qe(256),xf=qe(256);function Mn(t){if(Fn(t)||jn(t))return Mn(t.values);Nf(wf(t),"The `set` function only works on arrays, Series, and DataFrames!");let e=[],r={};return vf(t).forEach(n=>{let s=typeof n=="object"&&n===null?Tf:Of(n)?_f:Sf(n)?n.toString():typeof n=="symbol"?n.toString()+" - "+xf:n===1/0?Df:n===-1/0?If:typeof n=="bigint"?n.toString():Fn(n)?n.toJSONString():jn(n)?JSON.stringify(n.toObject()):JSON.stringify(n);r[s]||e.push(n),r[s]=!0}),e}Bn.exports=Mn});var Jn=c((Rb,kn)=>{var Un=d(),Af=p(),Ef=b(),Ff=te(),jf=y(),Mf=q(),Pn=Z(),Ae=R(),zn=E(),Bf=C(),Uf=w();function Cn(t,e,r){if(Mf(r)&&(r=0),Un(r===0||r===1||r==="vertical"||r==="horizontal",'The only valid axis values for use when appending data to a DataFrame are 0, 1, "vertical", and "horizontal". Note that 0 == "horizontal" and 1 == "vertical".'),Af(e)){Un(!Ff(e),"The array of data you're trying to append to this DataFrame is jagged!");let n=Uf(e);if(n.length===1)if(r===0){let s=t.copy();s._values.push(e);let i=Math.max(t.shape[1],n[0]);for(s._values.forEach(o=>{for(;o.length<i;)o.push(void 0)});s._index.length<s._values.length;)s._index.push("row"+s._index.length);for(;s._columns.length<i;)s._columns.push("col"+s._columns.length);return s}else{let s=Math.max(t.shape[0],n[0]),i=t.copy();for(zn(0,s).forEach(o=>{o>=i._values.length&&i._values.push(Ae(t.shape[1])),i._values[o].push(e[o])});i._index.length<i._values.length;)i._index.push("row"+i._index.length);for(;i._columns.length<i._values[0].length;)i._columns.push("col"+i._columns.length);return i}else if(n.length===2)if(r===0){let s=Math.max(...e.map(o=>o.length).concat([t.shape[1]])),i=t.copy();for(i._values=i._values.concat(e).map(o=>{for(;o.length<s;)o.push(void 0);return o});i._index.length<i._values.length;)i._index.push("row"+i._index.length);for(;i._columns.length<s;)i._columns.push("col"+i._columns.length);return i}else{let s=Math.max(...e.map(u=>u.length))+t.shape[1],i=Math.max(t.shape[0],n[0]),o=t.copy();for(zn(0,i).forEach(u=>{for(u>=o._values.length&&o._values.push(Ae(t.shape[1])),o._values[u]=o._values[u].concat(e[u]);o._values[u].length<s;)o._values[u].push(void 0)});o._index.length<o._values.length;)o._index.push("row"+o._index.length);for(;o._columns.length<s;)o._columns.push("col"+o._columns.length);return o}else throw new Pn("Only 1- and 2-dimensional arrays can be appended to a DataFrame!")}else if(jf(e)){let n=Cn(t,e.values,r);return r===0?n.index[n.index.length-1]=n.index.indexOf(e.name)>-1?e.name+" (2)":e.name:n.columns[n.columns.length-1]=n.columns.indexOf(e.name)>-1?e.name+" (2)":e.name,n}else if(Ef(e))if(r===0){let n=t.copy(),s=Bf(n._columns.concat(e._columns)).length;for(n._values.forEach(i=>{for(;i.length<s;)i.push(void 0)}),e.apply(i=>{let o=i.copy(),u=[];n._columns.forEach(a=>{let l=o._index.indexOf(a);l>-1?(u.push(o._values[l]),o._values.splice(l,1),o._index.splice(l,1)):u.push(void 0)}),n._values.push(u.concat(o._values))},1),n._columns=n._columns.concat(e._columns.filter(i=>n._columns.indexOf(i)<0));n._index.length<n._values.length;){let i="row"+n._index.length;n._index.push(i+(t._index.indexOf(i)>-1?" (2)":""))}return n}else{let n=t.copy();return n._index.forEach((s,i)=>{let o=e._index.indexOf(s);o>-1?n._values[i]=n._values[i].concat(e._values[o]):n._values[i]=n._values[i].concat(Ae(e.shape[1]))}),e._index.forEach((s,i)=>{n._index.indexOf(s)<0&&(n._index.push(s),n._values.push(Ae(n._columns.length).concat(e._values[i])))}),n._columns=n._columns.concat(e._columns.map(s=>s+(n._columns.indexOf(s)>-1?" (2)":""))),n}else throw new Pn("Only 1- or 2-dimensional arrays, Series, and DataFrames can be appended to a DataFrame!")}kn.exports=Cn});var Ln=c((Yb,$n)=>{var Rn=d(),Yn=p(),Pf=D(),Kn=q();function zf(t,e,r,n,s){if(s=s||0,Rn(Pf(n),"The first parameter to the `apply` method must be a function."),Rn(s===0||s===1,"The second parameter to the `apply` method (the `axis`) must be 0 or 1."),s===0){let i={},o;if(r.columns.forEach((u,a)=>{let l=new e(r.values.map(h=>h[a]));l.name=u,l.index=r.index;let f=n(l,a,r);f instanceof e?i[u]=f.values:i[u]=f,Kn(o)&&(o=f instanceof e||Yn(f))}),o){let u=new t(i);return u.index=r.index,u}else{let u=new e(r.columns.map(a=>i[a]));return u.index=r.columns,u}}else if(s===1){let i,o=r.values.map((u,a)=>{let l=new e(u);l.name=r.index[a],l.index=r.columns;let f=n(l,a,r);return Kn(i)&&(i=f instanceof e||Yn(f)),f instanceof e?f.values:f});if(i){let u=new t(o);return u.index=r.index,u.columns=r.columns,u}else{let u=new e(o);return u.index=r.index,u}}}$n.exports=zf});var x=c((Kb,Gn)=>{function Cf(t){return typeof t=="string"}Gn.exports=Cf});var Hn=c(($b,Wn)=>{var Vn=d(),kf=p(),Jf=te(),Rf=J(),Yf=x(),Kf=q(),$f=Z(),Lf=w();function Gf(t,e,r,n,s){let i=u=>u instanceof t,o=u=>u instanceof e;if(Kf(s)){if(i(n))return r.append(n,1);if(o(n))return r.append(n,1);if(Rf(n)){let u=Math.max(...Object.keys(n).concat(Object.getOwnPropertySymbols(n)).map(a=>n[a].length));return Object.keys(n).concat(Object.getOwnPropertySymbols(n)).forEach(a=>{for(;n[a].length<u;)n[a].push(void 0)}),r.append(new t(n),1)}else throw new $f("You must pass a DataFrame, Series, or object into the `assign` method!")}else{Vn(Yf(n),"If passing two arguments into the `assign` method, then the first argument must be a string name!"),Vn(kf(s)&&!Jf(s)&&Lf(s).length===1,"If passing two arguments into the `assign` method, then the second argument must be a 1-dimensional array!");let u=r.append(s,1);return u.columns[u.columns.length-1]=n,u}}Wn.exports=Gf});var Qn=c((Lb,Xn)=>{var{copy:Vf}=U();function Wf(t,e){if(e.isEmpty)return new t;let r=new t(Vf(e.values));return r.columns=e.columns.slice(),r.index=e.index.slice(),r}Xn.exports=Wf});var is=c((Gb,ss)=>{var Ee=d(),Zn=p(),es=g(),ts=x(),rs=q(),ns=w();function Hf(t,e,r,n,s){rs(n)&&(n=[]),rs(s)&&(s=[]),(ts(n)||es(n))&&(n=[n]),(ts(s)||es(s))&&(s=[s]),Ee(Zn(n),"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),Ee(Zn(s),"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),Ee(ns(n).length===1,"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),Ee(ns(s).length===1,"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings.");let i,o;r.index.forEach((a,l)=>{n.indexOf(a)<0&&n.indexOf(l)<0&&(i||(i=[]),i.push(a))}),r.columns.forEach((a,l)=>{s.indexOf(a)<0&&s.indexOf(l)<0&&(o||(o=[]),o.push(a))});let u=r.get(i,o);if(u instanceof e){let a=new t;a=a.assign(u),r.index.indexOf(u.name)>-1&&(a=a.transpose()),u=a}return u}ss.exports=Hf});var re=c((Vb,os)=>{var Xf=gt();function Qf(t){return Xf(t)&&t>=0}os.exports=Qf});var as=c((Wb,us)=>{var Tt=d(),Zf=x(),Fe=q(),eh=re(),th=w();function rh(t,e,r,n,s,i){n=n||0,Tt(n===0||n===1,"The first parameter of the `dropMissing` method (the `axis`) must be 0 or 1."),i=i||0,Tt(eh(i),"The third parameter of the `dropMissing` method (the `threshold`) should be a whole number (meaning that data should be dropped if it contains more than `threshold` null values)."),s=i>0?"none":s||"any",Tt(s==="any"||s==="all"||s==="none","The second parameter of the `dropMissing` method (the `condition` parameter, which indicates the condition under which data should be dropped) should be 'any' or 'all' (meaning that if 'any' of the data contains null values, then it should be dropped; or that if 'all' of the data contains null values, then it should be dropped).");function o(l){if(i>0){let f=0;for(let h=0;h<l.length;h++){let m=l[h];if(Fe(m)&&f++,f>=i)return[]}}else if(s==="any")for(let f=0;f<l.length;f++){let h=l[f];if(Fe(h))return[]}else if(s==="all"){for(let f=0;f<l.length;f++){let h=l[f];if(!Fe(h))return l}return[]}return l}let u=r.copy(),a=Math.random().toString();if(n===0){u=u.assign(a,u.index);let l=u.values.map(o).filter(h=>h.length>0);if(th(l).length<2)return new t;u.values=l;let f=u.get(null,a);if(Fe(f))return new t;Zf(f)&&(f=[f]),f instanceof e&&(f=f.values),u.index=f,u=u.drop(null,a)}else if(n===1){let l={};if(u.columns.forEach((h,m)=>{let N=u.values.map(_=>_[m]),O=o(N);O.length>0&&(l[h]=O)}),Object.keys(l).length+Object.getOwnPropertySymbols(l).length===0)return new t;let f=new t(l);return f.index=u.index,f}return u}us.exports=rh});var _t=c((Hb,ls)=>{var nh=d(),sh=p(),ih=b(),oh=g(),uh=y();function cs(t){if(ih(t)||uh(t))return t.dropNaN(...Object.values(arguments).slice(1));nh(sh(t),"The `dropNaN` function only works on arrays, Series, and DataFrames!");let e=[];return t.forEach(r=>{try{return e.push(cs(r))}catch{if(oh(r))return e.push(r)}}),e}ls.exports=cs});var hs=c((Xb,fs)=>{var Dt=d(),ah=_t(),ch=re();function lh(t,e,r,n,s){r=r||0,Dt(r===0||r===1,"The first parameter of the `dropNaN` method (the `axis`) must be 0 or 1."),s=s||0,Dt(ch(s),"The third parameter of the `dropNaN` method (the `threshold`) should be a whole number (meaning that data should be dropped if it contains more than `threshold` NaN values)."),n=s>0?"none":n||"any",Dt(n==="any"||n==="all"||n==="none","The second parameter of the `dropNaN` method (the `condition` parameter, which indicates the condition under which data should be dropped) should be 'any' or 'all' (meaning that if 'any' of the data contains NaN values, then it should be dropped; or that if 'all' of the data contains NaN values, then it should be dropped).");function i(u){let a=ah(u);return s>0?u.length-a.length<s:n==="any"?a.length===u.length:n==="all"?a.length>0:!0}let o=e.copy();if(r===0){let u=o.index.filter(a=>{let l=o.get(a,null).values;return i(l)});return u.length>0?o.get(u,null):new t}else if(r===1){let u=o.columns.filter(a=>{let l=o.get(null,a).values;return i(l)});return u.length>0?o.get(null,u):new t}return o}fs.exports=lh});var gs=c((Qb,ps)=>{var ms=d(),fh=P(),hh=D(),mh=q();function ds(t){let e={};return fh(t).forEach((r,n)=>{e[r]=n}),e}function ne(t){return Object.keys(t).concat(Object.getOwnPropertySymbols(t)).sort((e,r)=>t[e]-t[r])}function dh(t,e,r,n,s){ms(hh(n),"The `filter` method takes a single parameter: a function that is used to filter the values."),mh(s)&&(s=0),ms(s===0||s===1,"The `axis` parameter to the `filter` method must be 0 or 1.");let i=r.copy();if(i.isEmpty)return i;let o=ds(i.index),u=ds(i.columns);if(s===0){let a=0,l=i.values.filter((f,h)=>{let m=new e(f);m.name=r.index[h],m.index=r.columns;let N=n(m,h,r);return N?a++:delete o[i.index[h]],N});if(a===0)return new t;if(a===1){let f=new e(l[0]);return f.name=ne(o)[0],f.index=ne(u),f}i.values=l,i.index=ne(o)}else if(s===1){i=i.transpose();let a=0,l=i.values.filter((f,h)=>{let m=new e(f);m.name=r.columns[h],m.index=r.index;let N=n(m,h,r);return N?a++:delete u[i.index[h]],N});if(a===0)return new t;if(a===1){let f=new e(l[0]);return f.name=ne(u)[0],f.index=ne(o),f}i.values=l,i.index=ne(u),i=i.transpose()}return i}ps.exports=dh});var bs=c((Zb,qs)=>{var j=d(),je=g(),Me=x(),ys=q(),ph=C();function gh(t,e,r){(Me(e)||je(e))&&(e=[e]),(Me(r)||je(r))&&(r=[r]);for(let s in e)typeof e[s]=="bigint"&&(e[s]=Number(e[s]));for(let s in r)typeof r[s]=="bigint"&&(r[s]=Number(r[s]));let n=ph((e||[]).concat(r||[]).map(s=>typeof s));return j(n.length<=2,"Only whole numbers and/or strings are allowed in `get` arrays!"),n.length===1&&j(n[0]==="string"||n[0]==="number","Only whole numbers and/or strings are allowed in `get` arrays!"),n.length===2&&(j(n.indexOf("string")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!"),j(n.indexOf("number")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!")),ys(e)||(e=e.map(s=>{if(Me(s))return j(t.index.indexOf(s)>-1,`Row "${s}" does not exist!`),s;if(je(s))return j(s>=0,`Index ${s} is out of bounds!`),j(Math.floor(s)===s,"Row numbers must be integers!"),j(s<t.index.length,`Index ${s} is out of bounds!`),t.index[s]})),ys(r)||(r=r.map(s=>{if(Me(s))return j(t.columns.indexOf(s)>-1,`Column "${s}" does not exist!`),s;if(je(s))return j(s>=0,`Column ${s} is out of bounds!`),j(Math.floor(s)===s,"Column numbers must be integers!"),j(s<t.columns.length,`Column ${s} is out of bounds!`),t.columns[s]})),t.getSubsetByNames(e,r)}qs.exports=gh});var se=c((eN,vs)=>{var Ns=d(),yh=p(),qh=b(),bh=D(),Nh=y(),vh=q();function wh(t,e){try{return t<e?-1:t>e?1:0}catch{return t=typeof t=="object"&&t!==null?JSON.stringify(t):t.toString(),e=typeof e=="object"&&e!==null?JSON.stringify(e):e.toString(),t<e?-1:t>e?1:0}}function Sh(t,e){if(vh(e)&&(e=wh),qh(t)||Nh(t))return t.sort(...Object.values(arguments).slice(1));Ns(yh(t),"The `sort` function only works on arrays, Series, and DataFrames!"),Ns(bh(e),"The second parameter of the `sort` function must be a comparison function!");let r=t.slice();return r.sort(e),r}vs.exports=Sh});var Ts=c((tN,Os)=>{var ws=d(),Ss=x(),Oh=q(),Th=C(),_h=se();function Dh(t){let e=t.toLowerCase(),r="";for(let s=0;s<e.length;s++){let i=e[s];i.match(/[a-z0-9]/g)?r+=i:r+=" "}let n=r.split(" ").filter(s=>s.length>0);return n[0]+n.slice(1).map(s=>s[0].toUpperCase()+s.substring(1)).join("")}function Ih(t,e,r){Oh(r)?r=e.columns:Ss(r)&&(r=[r]);let n={};r.forEach(i=>{ws(Ss(i),"You must pass either a string or a one-dimensional array of strings into the `getDummies` (AKA `oneHotEncode`) method!");let o=e.columns.indexOf(i);ws(o>-1,`The given DataFrame does not have a column called "${i}"!`);let u=e.values.map(l=>l[o]),a=_h(Th(u));u.forEach(l=>{a.forEach(f=>{let h=i+"_"+Dh(f.toString());n[h]||(n[h]=[]),l===f?n[h].push(1):n[h].push(0)})})});let s=new t(n);return s.index=e.index,s}Os.exports=Ih});var js=c((rN,Fs)=>{var Y=d(),_s=p(),Ds=g(),Is=q(),xs=re(),As=E(),Es=w();function xh(t,e,r){let n=t.shape;Is(e)&&(e=As(0,n[0])),Is(r)&&(r=As(0,n[1])),Ds(e)&&(e=[e]),Ds(r)&&(r=[r]),Y(_s(e)&&_s(r),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),Y(Es(e).length===1&&Es(r).length===1,"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),Y(e.length>0,"The `rowIndices` array must contain at least one index."),Y(r.length>0,"The `colIndices` array must contain at least one index."),e.forEach(o=>{Y(xs(o),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),Y(o<t.index.length,`The row index ${o} is out of bounds.`)}),r.forEach(o=>{Y(xs(o),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),Y(o<t.columns.length,`The column index ${o} is out of bounds.`)});let s=e.map(o=>t.index[o]),i=r.map(o=>t.columns[o]);return t.getSubsetByNames(s,i)}Fs.exports=xh});var zs=c((nN,Ps)=>{var K=d(),Ms=p(),Be=x(),Bs=q(),Us=w();function Ah(t,e,r,n,s){Bs(n)&&(n=r.index),Bs(s)&&(s=r.columns),Be(n)&&(n=[n]),Be(s)&&(s=[s]),K(Ms(n)&&Ms(s),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),K(Us(n).length===1&&Us(s).length===1,"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),K(n.length>0,"The `rows` array must contain at least one row name."),K(s.length>0,"The `cols` array must contain at least one column name."),n.forEach(u=>{K(Be(u),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),K(r.index.indexOf(u)>-1,`The row name "${u}" does not exist in the list of rows.`)}),s.forEach(u=>{K(Be(u),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),K(r.columns.indexOf(u)>-1,`The column name "${u}" does not exist in the list of columns.`)});let i=n.map(u=>s.map(a=>r.values[r.index.indexOf(u)][r.columns.indexOf(a)]));if(n.length===1&&s.length===1)return i[0][0];if(n.length===1){let u=new e(i[0]);return u.name=n[0],u.index=s,u}if(s.length===1){let u=new e(i.map(a=>a[0]));return u.name=s[0],u.index=n,u}let o=new t(i);return o.columns=s,o.index=n,o}Ps.exports=Ah});var ks=c((sN,Cs)=>{var Eh=x(),be=E();function Fh(t,e,r){function n(m,N){return Eh(m)&&m.length>N?m.substring(0,N-3)+"...":m}if(r.isEmpty)return console.table({}),console.log("Shape:",[0,0],`
15
- `),r;let s=typeof window>"u"?20:10,i=Math.floor(s/2),o=typeof process>"u"?10:Math.floor(process.stdout.columns/24)-1,u=Math.floor(o/2),a=s>r.index.length?null:be(0,i).concat(be(r.index.length-i,r.index.length)),l=o>r.columns.length?null:be(0,u).concat(be(r.columns.length-u,r.columns.length)),f=r.get(a,l);f instanceof e&&(r.shape[0]===1?(f=new t([f.values]),f.index=r.index,f.columns=new e(r.columns).get(l).values):r.shape[1]===1&&(f=new t([f.values]).transpose(),f.index=new e(r.index).get(a).values,f.columns=r.columns)),s<=r.index.length&&(f._index.splice(i,0,"..."),f._values.splice(i,0,be(0,f.columns.length).map(()=>"..."))),o<=r.columns.length&&(f._columns.splice(u,0,"..."),f._values=f._values.map(m=>(m.splice(u,0,"..."),m)));let h=28;return f instanceof e?(f.values=f.values.map(m=>n(m,h)),f.name=n(f.name,h),f.index=f.index.map(m=>n(m,h))):(f.values=f.values.map(m=>m.map(N=>n(N,h))),f.columns=f.columns.map(m=>n(m,h)),f.index=f.index.map(m=>n(m,h))),console.table(f.toDetailedObject()),console.log("Shape:",r.shape,`
16
- `),r}Cs.exports=Fh});var Ue=c((iN,Js)=>{var jh=d(),Mh=g();function Bh(t,e){jh(Mh(t),"The `leftPad` function only works on numbers!");let r=t.toString();for(;r.length<e;)r="0"+r;return r}Js.exports=Bh});var Ys=c((oN,Rs)=>{var Uh=Ue(),Ph=E();function zh(t,e){let r=e?t:t.copy();return r.index=Ph(0,t.shape[0]).map(n=>"row"+Uh(n,(r.index.length-1).toString().length)),r}Rs.exports=zh});var Pe=c((uN,Ks)=>{var{random:Ch}=H(),kh=d(),Jh=p(),Rh=b(),Yh=y();function Kh(t){if(Rh(t)||Yh(t))return t.shuffle(...Object.values(arguments).slice(1));kh(Jh(t),"The `shuffle` function only works on arrays, Series, and DataFrames!");let e=[],r=t.slice();for(let n=0;n<t.length;n++){let s=Math.floor(Ch()*r.length);e.push(r.splice(s,1)[0])}return e}Ks.exports=Kh});var Gs=c((aN,Ls)=>{var $h=d(),Lh=q(),$s=Pe();function Gh(t,e){return Lh(e)&&(e=0),$h(e===0||e===1,"The `axis` parameter to the `shuffle` must be 0, 1, or undefined."),t.get(e===0?$s(t.index):null,e===1?$s(t.columns):null)}Ls.exports=Gh});var ze=c((cN,Vs)=>{function Vh(t){return typeof t=="boolean"}Vs.exports=Vh});var Zs=c((lN,Qs)=>{var{random:Wh}=H(),F=d(),Ws=p(),It=ze(),Xs=D(),Ce=g(),ie=x(),xt=q(),Hh=re(),Xh=E(),Hs=w(),At=se();function Qh(t,e,r){return Xs(e)?Zh(t,e,r):em(t,e,r)}function Zh(t,e,r){if(r=xt(r)?0:r,F(Xs(e),"When sorting a DataFrame using a function, the first argument to the `sort` method must be a function!"),F(Ce(r),"When sorting a DataFrame using a function, the second argument to the `sort` method must be null, undefined, 0, or 1 to indicate the axis along which the data should be sorted! An axis of 0 means that the rows will be sorted relative to each other, whereas an axis of 1 means that the columns will be sorted relative to each other."),r===0){let n=At(t.index,(s,i)=>e(t.get(s,null),t.get(i,null)));return t.get(n,null)}else{let n=At(t.columns,(s,i)=>e(t.get(null,s),t.get(null,i)));return t.get(null,n)}}function em(t,e,r){let n=t.copy(),s=Wh().toString();n=n.assign(s,n.index),xt(e)&&(e=[s],r=[!0]),(Ce(e)||ie(e))&&(e=[e],(It(r)||ie(r))&&(r=[r])),F(Ws(e),"The first parameter of the `sort` method must be (1) a string or index representing a column name or index, respectively; (2) a 1-dimensional array of strings and/or indices; or (3) null."),F(Hs(e).length===1,"The first parameter of the `sort` method must be (1) a string or index representing a column name or index, respectively; (2) a 1-dimensional array of strings and/or indices; or (3) null."),xt(r)&&(r=Xh(0,e.length).map(()=>!0)),F(Ws(r),"The second parameter of the `sort` method must be (1) a string or boolean representing the sort direction ('ascending' / 'descending', or true / false); (2) a 1-dimensional array of strings and/or booleans; or (3) null."),F(Hs(r).length===1,"The second parameter of the `sort` method must be (1) a string or boolean representing the sort direction ('ascending' / 'descending', or true / false); (2) a 1-dimensional array of strings and/or booleans; or (3) null."),F(e.length===r.length,"The arrays passed into the `sort` method must be equal in length."),e=e.map(o=>{if(F(ie(o)||Ce(o),"Column references can either be column names (as strings) or column indices (as whole numbers)."),ie(o)){let u=n.columns.indexOf(o);return F(u>-1,`The column "${o}" does not exist!`),u}if(Ce(o))return F(Hh(o),"Column indices must be whole numbers!"),F(o<n.columns.length,`The index ${o} is out of bounds!`),o}),r=r.map(o=>{if(F(ie(o)||It(o),"Direction references can either be strings ('ascending' or 'descending') or booleans (true or false)."),ie(o)){let u=o.trim().toLowerCase();return F(u==="ascending"||u==="descending","Direction references can either be strings ('ascending' or 'descending') or booleans (true or false)."),u==="ascending"}if(It(o))return o}),n.values=At(n.values,(o,u)=>{let a=0;for(;o[e[a]]===u[e[a]]&&a<e.length;)a++;let l=r[a];if(o[e[a]]===u[e[a]])return 0;if(o[e[a]]<u[e[a]])return l?-1:1;if(o[e[a]]>u[e[a]])return l?1:-1});let i=n.columns.indexOf(s);return n.index=n.values.map(o=>o[i]),n=n.dropColumns(s),n}Qs.exports=Qh});var ti=c((fN,ei)=>{var tm=d(),rm=q();function nm(t,e){rm(e)?e=0:tm(e===0||e===1,"The axis parameter of the `toDetailedObject` method must be undefined, 0, or 1. An axis of 0 indicates that the returned object should be organized first by rows and then by columns. An axis of 1 indicates that the returned object should be organized first by columns and then by rows.");let r={};return e===0?t.index.forEach((n,s)=>{let i={};t.columns.forEach((o,u)=>{i[o]=t.values[s][u]}),r[n]=i}):t.columns.forEach((n,s)=>{let i={};t.index.forEach((o,u)=>{i[o]=t.values[u][s]}),r[n]=i}),r}ei.exports=nm});var Et=c((hN,ri)=>{function sm(t,e){return JSON.stringify(t.toObject(e))}ri.exports=sm});var ni=c((mN,jt)=>{var Ft=Z(),im=Et();function om(t,e,r){let n=im(t,r),s=!1,i=!1,o,u;try{let a=e;if(e.includes("/")){let f=e.split("/");a=f[f.length-1]}let l=document.createElement("a");l.href=`data:application/json;charset=utf-8,${encodeURIComponent(n)}`,l.download=a,l.dispatchEvent(new MouseEvent("click")),s=!0}catch(a){o=a}try{let a=Or("fs"),l=Or("path");a.writeFileSync(l.resolve(e),n,"utf8"),i=!0}catch(a){u=a}if(!s&&!i)throw typeof window<"u"?new Ft(o):typeof jt<"u"?new Ft(u):new Ft("I don't know what's going wrong, but it doesn't seem like you're in Node or the browser, and we couldn't download and/or write the file to disk!");return t}jt.exports=om});var ii=c((dN,si)=>{function um(t){let e={};return t.columns.forEach(r=>{e[r]=t.get(r).values}),e}si.exports=um});var X=c((pN,ai)=>{var oi=d(),am=p(),cm=b(),lm=y(),fm=R(),ui=ye(),hm=w();function mm(t){if(cm(t)||lm(t))return t.transpose();oi(am(t),"The `transpose` function only works on arrays, Series, and DataFrames!");let e=hm(t);if(oi(e.length<=2,"I'm not smart enough to know how to transpose arrays that have more than 2 dimensions. Sorry for the inconvenience! Please only pass 1- or 2-dimensional arrays into the `transpose` function!"),e.length===1)return ui(t);if(e.length===2){let r=fm(ui(e));for(let n=0;n<e[0];n++)for(let s=0;s<e[1];s++)r[s][n]=t[n][s];return r}}ai.exports=mm});var fi=c((gN,li)=>{var dm=d(),pm=p(),gm=De(),ym=y(),qm=w();function ci(t,e,r){if(ym(r))return new t(e.values.concat(r.values));if(pm(r)){let n=qm(r);dm(n.length===1&&!gm(n),"Only vectors can be appended to Series!");let s=e.copy();return r.forEach((i,o)=>{s._values.push(i),s._index.push("item"+(e.values.length+o))}),s}return ci(e,[r])}li.exports=ci});var mi=c((yN,hi)=>{var bm=d(),Nm=D();function vm(t,e){bm(Nm(e),"The parameter to the `apply` method must be a function.");let r=t.copy();return r._values=r._values.map((n,s)=>e(n,s)),r}hi.exports=vm});var pi=c((qN,di)=>{var wm=q();function Sm(t){let e=t.copy(),r=[];return e._values=e.values.filter((n,s)=>wm(n)?!1:(r.push(e.index[s]),!0)),e._index=r,e}di.exports=Sm});var yi=c((bN,gi)=>{var Om=g();function Tm(t,e){let r=[],n=[];e.values.forEach((i,o)=>{Om(i)&&(n.push(i),r.push(e.index[o]))});let s=new t(n);return s.name=e.name,s.index=r,s}gi.exports=Tm});var bi=c((NN,qi)=>{var{copy:_m}=U();function Dm(t,e,r){let n=e.copy(),s=_m(n.index),i=[],o=n.values.filter((u,a)=>{let l=r(u,a,n.values);return l||i.push(n.index[a]),l});return i.forEach(u=>{s.splice(s.indexOf(u),1)}),o.length===0?(n=new t,n.name=e.name,n):(n.values=o,n.index=s,n)}qi.exports=Dm});var vi=c((vN,Ni)=>{var $=d(),Im=g(),xm=x(),Am=q(),Em=C();function Fm(t,e){(xm(e)||Im(e))&&(e=[e]);for(let n in e)typeof e[n]=="bigint"&&(e[n]=Number(e[n]));let r=Em((e||[]).map(n=>typeof n));return $(r.length<=2,"Only whole numbers and/or strings are allowed in `get` arrays!"),r.length===1&&$(r[0]==="string"||r[0]==="number","Only whole numbers and/or strings are allowed in `get` arrays!"),r.length===2&&($(r.indexOf("string")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!"),$(r.indexOf("number")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!")),Am(e)||(e=e.map(n=>{if(typeof n=="string")return $(t.index.indexOf(n)>-1,`Index "${n}" does not exist!`),n;if(typeof n=="number")return $(n>=0,`Index ${n} is out of bounds!`),$(Math.floor(n)===n,"Indices must be integers!"),$(n<t.index.length,`Index ${n} is out of bounds!`),t.index[n]})),t.getSubsetByNames(e)}Ni.exports=Fm});var Si=c((wN,wi)=>{var Ne=d(),jm=p(),Mm=q(),Bm=re(),Um=E(),Pm=w();function zm(t,e){let r=t.shape;Mm(e)&&(e=Um(0,r[0])),Ne(jm(e),"The `indices` array must be 1-dimensional array of whole numbers."),Ne(Pm(e).length===1,"The `indices` array must be a 1-dimensional array of whole numbers."),Ne(e.length>0,"The `indices` array must contain at least one index."),e.forEach(s=>{Ne(Bm(s),"The `indices` array must be a 1-dimensional array of whole numbers."),Ne(s<t.index.length,`The row index ${s} is out of bounds.`)});let n=e.map(s=>t.index[s]);return t.getSubsetByNames(n)}wi.exports=zm});var Ti=c((SN,Oi)=>{var ve=d(),Cm=p(),km=x(),Jm=q(),Rm=w();function Ym(t,e,r){Jm(r)&&(r=e.index),ve(Cm(r),"The `indices` array must be a 1-dimensional array of strings."),ve(Rm(r).length===1,"The `indices` array must be a 1-dimensional array of strings."),ve(r.length>0,"The `indices` array must contain at least one index name."),r.forEach(i=>{ve(km(i),"The `indices` array must contain only strings."),ve(e.index.indexOf(i)>-1,`The name "${i}" does not exist in the index.`)});let n=r.map(i=>e.values[e.index.indexOf(i)]);if(n.length===1)return n[0];let s=new t(n);return s.index=r,s.name=e.name,s}Oi.exports=Ym});var Ii=c((ON,Di)=>{var{copy:Km}=U(),_i=E();function $m(t){let e=t.copy(),r=typeof window>"u"?20:10;if(e.index.length>r){e=e.get(_i(0,r/2).concat(_i(e.index.length-r/2,e.index.length)));let s=Km(e.index);s.splice(Math.floor(s.length/2),0,"..."),e.values.push("..."),e.index.push("..."),e=e.get(s)}let n={};return e.values.forEach((s,i)=>{let o={};o[e.name]=s,n[e.index[i]]=o}),console.table(n),console.log("Shape:",t.shape,`
17
- `),t}Di.exports=$m});var Ai=c((TN,xi)=>{var Lm=Pe();function Gm(t){let e=t.copy();return e.get(Lm(e.index))}xi.exports=Gm});var Fi=c((_N,Ei)=>{var Vm=d(),Wm=D(),Hm=q(),Xm=se(),Qm=X();function Zm(t,e,r){r=r||((a,l)=>a<l?-1:1),Vm(Hm(r)||Wm(r),"You must pass undefined, null, or a comparison function as the second argument to the `sort` method!");let n=Qm([e.values,e.index]),s=Xm(n,(a,l)=>r(a[0],l[0])),i=[],o=[];s.forEach(a=>{i.push(a[0]),o.push(a[1])});let u=new t;return u._values=i,u._index=o,u.name=e.name,u}Ei.exports=Zm});var Bi=c((DN,Mi)=>{var ed=se(),ji=X();function td(t,e){let r=ji([e.values,e.index]);r=ji(ed(r,(s,i)=>{if(s[1]===i[1])return 0;if(s[1]<i[1])return-1;if(s[1]>i[1])return 1}));let n=new t(r[0]);return n.index=r[1],n.name=e.name,n}Mi.exports=td});var Pi=c((IN,Ui)=>{function rd(t){let e={};return e[t.name]={},t.index.forEach((r,n)=>{e[t.name][r]=t.values[n]}),e}Ui.exports=rd});var Ri=c((xN,Ji)=>{var{copy:ke}=U(),k=d(),Mt=p(),nd=x(),sd=q(),zi=Ue(),Ci=E(),Je=ye(),id=fi(),od=mi(),ud=pi(),ad=yi(),cd=bi(),ld=vi(),fd=Si(),hd=Ti(),md=Ii(),dd=Ai(),pd=Fi(),gd=Bi(),yd=Pi(),we=w(),qd=X(),ki=Symbol.for("@jrc03c/js-math-tools/series");Ji.exports=function(t){class e{static[Symbol.hasInstance](n){try{return!!n._symbol&&n._symbol===ki}catch{return!1}}constructor(n){if(this.name="data",Object.defineProperty(this,"_symbol",{configurable:!1,enumerable:!1,writable:!1,value:ki}),Object.defineProperty(this,"_values",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"values",{configurable:!0,enumerable:!0,get(){return this._values},set(s){k(Mt(s),"The new values must be a 1-dimensional array!");let i=we(s);k(i.length===1,"The new array of values must be 1-dimensional!"),i[0]<this._index.length?this._index=this._index.slice(0,i[0]):i[0]>this._index.length&&(this._index=this._index.concat(Ci(this._index.length,i[0]).map(o=>"item"+zi(o,(s.length-1).toString().length)))),this._values=s}}),Object.defineProperty(this,"_index",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"index",{configurable:!0,enumerable:!0,get(){return this._index},set(s){k(Mt(s),"The new index must be a 1-dimensional array of strings!"),k(s.length===this.shape[0],"The new index must be the same length as the old index!"),k(we(s).length===1,"The new index must be a 1-dimensional array of strings!"),s.forEach(i=>{k(nd(i),"All of the row names must be strings!")}),this._index=s}}),n){if(n instanceof e)this.name=n.name,this.values=ke(n.values),this.index=ke(n.index);else if(Mt(n)){let s=we(n);k(s.length===1,"When passing an array into the constructor of a Series, the array must be 1-dimensional!"),this.values=n}else if(n instanceof Object){let s=Object.keys(n).concat(Object.getOwnPropertySymbols(n)).map(u=>u.toString());k(s.length===1,"When passing an object into the constructor of a Series, the object must have only 1 key-value pair, where the key is the name of the data and the value is the 1-dimensional array of values!");let i=s[0],o=n[i];k(we(o).length===1,"When passing an object into the constructor of a Series, the object must have only 1 key-value pair, where the key is the name of the data and the value is the 1-dimensional array of values!"),this.name=i,this.values=o.slice()}}}get shape(){return we(this.values)}get length(){return this.shape[0]}get isEmpty(){return this.values.filter(n=>!sd(n)).length===0}clear(){let n=this.copy();return n.values.forEach((s,i)=>{n.values[i]=void 0}),n}get(n){return ld(this,n)}getSubsetByNames(n){return hd(e,this,n)}getSubsetByIndices(n){return fd(this,n)}loc(n){return this.getSubsetByNames(n)}iloc(n){return this.getSubsetByIndices(n)}reverse(){let n=new e(Je(this.values));return n.index=Je(this.index),n.name=this.name,n}resetIndex(){let n=this.copy();return n.index=Ci(0,this.shape[0]).map(s=>"item"+zi(s,(n.index.length-1).toString().length)),n}copy(){let n=new e;return n._values=ke(this.values),n._index=ke(this.index),n.name=this.name,n}append(n){return id(e,this,n)}apply(n){return od(this,n)}concat(n){return this.append(n)}dropMissing(n,s){return ud(this,n,s)}dropNaN(){return ad(e,this)}toObject(){return yd(this)}print(){return md(this)}shuffle(){return dd(this)}sort(n){return pd(e,this,n)}sortByIndex(){return gd(e,this)}filter(n){return cd(e,this,n)}toDataFrame(){let n=new t(qd([this.values]));return n.columns=[this.name],n.index=this.index,n}transpose(){let n=this.copy();return n.values=Je(n.values),n.index=Je(n.index),n}getDummies(){return this.toDataFrame().getDummies()}oneHotEncode(){return this.getDummies()}}return e}});var ue=c((AN,Gi)=>{var{copy:Bt}=U(),{random:bd}=H(),M=d(),Yi=xe(),Nd=Jn(),vd=Ln(),wd=Hn(),Sd=Qn(),Od=is(),Td=as(),_d=hs(),Dd=gs(),Id=bs(),Ki=Ts(),xd=js(),Ad=zs(),Ed=ks(),Fd=Ys(),jd=Gs(),Md=Zs(),Bd=ti(),Ud=ni(),Pd=Et(),zd=ii(),Se=p(),Cd=te(),kd=J(),Ut=q(),Pt=Ue(),Jd=R(),zt=E(),oe=w(),$i=X(),Li=Symbol.for("@jrc03c/js-math-tools/dataframe");function Re(t){let e="abcdefghijklmnopqrstuvwxyz1234567890",r="";for(let n=0;n<t;n++)r+=e[Math.floor(bd()*e.length)];return r}var T=class{static[Symbol.hasInstance](e){try{return!!e._symbol&&e._symbol===Li}catch{return!1}}constructor(e){if(Object.defineProperty(this,"_symbol",{configurable:!1,enumerable:!1,writable:!1,value:Li}),Object.defineProperty(this,"_values",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"values",{configurable:!0,enumerable:!0,get(){return this._values.length===0||!Ut(this._values[0])&&this._values[0].length===0?[[]]:this._values},set(r){M(Se(r),"The new values must be a 2-dimensional array!");let n=oe(r);M(n.length===2,"The new array of values must be 2-dimensional!"),n[0]<this._index.length?this._index=this._index.slice(0,n[0]):n[0]>this._index.length&&(this._index=this._index.concat(zt(this._index.length,n[0]).map(s=>"row"+Pt(s,(n[0]-1).toString().length)))),n[1]<this._columns.length?this._columns=this._columns.slice(0,n[1]):n[1]>this._columns.length&&(this._columns=this._columns.concat(zt(this._columns.length,n[1]).map(s=>"col"+Pt(s,(n[1]-1).toString().length)))),this._values=r}}),Object.defineProperty(this,"_columns",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"columns",{configurable:!0,enumerable:!0,get(){return this._columns},set(r){M(Se(r),"The new columns list must be a 1-dimensional array of strings!"),M(this.isEmpty||r.length===this.shape[1],"The new columns list must be the same length as the old columns list!"),M(oe(r).length===1,"The new columns list must be a 1-dimensional array of strings!"),r=r.map(s=>(typeof s!="string"&&(s=JSON.stringify(s)||s.toString()),s.trim().length===0?"untitled_"+Re(8):s.trim()));let n=(()=>{let s=Yi(r),i={};return s.values.forEach(o=>{i[o]=s.get(o)}),i})();r=r.map(s=>n[s]>1?s+"_"+Re(8):s),this._columns=r}}),Object.defineProperty(this,"_index",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"index",{configurable:!0,enumerable:!0,get(){return this._index},set(r){M(Se(r),"The new index must be a 1-dimensional array of strings!"),M(this.isEmpty||r.length===this.shape[0],"The new index must be the same length as the old index!"),M(oe(r).length===1,"The new index must be a 1-dimensional array of strings!"),r=r.map(s=>(typeof s!="string"&&(s=JSON.stringify(s)||s.toString()),s.trim().length===0?"untitled_"+Re(8):s.trim()));let n=(()=>{let s=Yi(r),i={};return s.values.forEach(o=>{i[o]=s.get(o)}),i})();r=r.map(s=>n[s]>1?s+"_"+Re(8):s),this._index=r}}),M(Ut(e)||kd(e)||Se(e),"The `data` passed into the constructor of a DataFrame must be either (1) an object where the key-value pairs are (respectively) column names and 1-dimensional arrays of values, or (2) a 2-dimensional array of values."),e)if(e instanceof T)this.values=Bt(e.values),this.columns=Bt(e.columns),this.index=Bt(e.index);else if(Se(e)){let r=oe(e);M(r.length===2,"The `data` array passed into the constructor of a DataFrame must be 2-dimensional!"),M(!Cd(e),"The 2-dimensional array passed into the constructor of a DataFrame must not contain sub-arrays (i.e., rows) of different lengths!"),this.values=e}else{this._columns=Object.keys(e).concat(Object.getOwnPropertySymbols(e)).map(o=>o.toString());let r=[],n=null,s=null;this._columns.forEach(o=>{Ut(s)&&(n=o,s=e[o].length),M(e[o].length===s,`The object passed into the DataFrame constructor contains arrays of different lengths! The key "${n}" points to an array containing ${s} items, and the key "${o}" points to an array containing ${e[o].length} items.`),s=e[o].length;let u=e[o];r.push(u)}),this._values=$i(r);let i=oe(this.values);this._index=zt(0,i[0]).map(o=>"row"+Pt(o,(i[0]-1).toString().length))}}get shape(){return oe(this.values)}get length(){return this.shape[0]}get width(){return this.shape[1]}get rows(){return this.index}set rows(e){this.index=e}get isEmpty(){return this.values.length===0||this.values.every(e=>e.length===0)}clear(){let e=new T(Jd(this.shape));return e.columns=this.columns.slice(),e.index=this.index.slice(),e}get(e,r){if(arguments.length===0)return this;if(arguments.length===1)try{return this.get(null,e)}catch{return this.get(e,null)}return Id(this,e,r)}getSubsetByNames(e,r){return Ad(T,L,this,e,r)}getSubsetByIndices(e,r){return xd(this,e,r)}getDummies(e){return Ki(T,this,e)}oneHotEncode(e){return Ki(T,this,e)}transpose(){let e=new T($i(this.values));return e.columns=this.index.slice(),e.index=this.columns.slice(),e}get T(){return this.transpose()}resetIndex(e){return Fd(this,e)}copy(){return Sd(T,this)}assign(e,r){return wd(T,L,this,e,r)}apply(e,r){return vd(T,L,this,e,r)}dropMissing(e,r,n){return Td(T,L,this,e,r,n)}dropNaN(e,r,n){return _d(T,this,e,r,n)}drop(e,r){return Od(T,L,this,e,r)}dropColumns(e){return this.drop(null,e)}dropRows(e){return this.drop(e,null)}toDetailedObject(e){return Bd(this,e)}toObject(){return zd(this)}toJSONString(e){return Pd(this,e)}saveAsJSON(e,r){return Ud(this,e,r)}print(){return Ed(T,L,this)}sort(e,r){return Md(this,e,r)}sortByIndex(){return this.sort()}filter(e,r){return Dd(T,L,this,e,r)}shuffle(e){return jd(this,e)}append(e,r){return Nd(this,e,r)}concat(e,r){return this.append(e,r)}join(e,r){return this.append(e,r)}toString(){return JSON.stringify(this)}},L=Ri()(T);Gi.exports={DataFrame:T,Series:L}});var Oe=c((EN,Vi)=>{var Rd=A();function Yd(t,e){return Rd(t,{shouldDropNaNs:e}).max}Vi.exports=Yd});var v=c((FN,to)=>{var{DataFrame:Wi,Series:Hi}=ue(),Xi=d(),Ye=p(),Qi=b(),Zi=z(),Kd=D(),eo=y(),$d=Oe(),Ld=E(),Ke=w();function Gd(t){return Xi(Kd(t),"You must pass a function into the `vectorize` function!"),function e(){let r,n,s=[],i=[],o=Object.keys(arguments).filter(u=>{let a=arguments[u];return Ye(a)?!0:eo(a)?(r=!0,s.push(a),!0):Qi(a)?(n=!0,i.push(a),!0):!1}).map(u=>arguments[u]);if(o.slice(0,-1).forEach((u,a)=>{Xi(Zi(Ye(u)?Ke(u):u.shape,Ye(o[a+1])?Ke(o[a+1]):o[a+1].shape),`When passing multiple arrays into the \`${t.name}\` function, all of the arrays must have the same shape!`)}),o.length>0){let u=$d(o.map(l=>l.length?l.length:l.values.length)),a=Ld(0,u).map(l=>{let f=Object.keys(arguments).map(h=>Ye(arguments[h])?arguments[h][l]:eo(arguments[h])||Qi(arguments[h])?arguments[h].values[l]:arguments[h]);return e(...f)});if(n)try{if(i.length===1&&Zi(Ke(i[0]),Ke(a))){let l=new Wi(a);return l.index=i[0].index.slice(),l.columns=i[0].columns.slice(),l}else return new Wi(a)}catch{return a}if(r)try{if(s.length===1&&s[0].length===a.length){let l=new Hi(a);return l.name=s[0].name,l.index=s[0].index.slice(),l}else return new Hi(a)}catch{return a}return a}else return t(...arguments)}}to.exports=Gd});var $e=c((jN,ro)=>{var Vd=g(),Wd=v();function Hd(t){try{return Vd(t)?typeof t=="bigint"?t<0?-t:t:Math.abs(t):NaN}catch{return NaN}}ro.exports=Wd(Hd)});var Le=c((MN,no)=>{var Xd=g(),Qd=v();function Zd(){try{let t=0,e=!1,r=Object.values(arguments);for(let n of r){if(!Xd(n))return NaN;typeof n=="bigint"&&(e=!0,n=Number(n)),t+=n}if(e)try{return BigInt(t)}catch{}return t}catch{return NaN}}no.exports=Qd(Zd)});var Te=c((BN,so)=>{var ep=v();function tp(t,e){try{return e(t)}catch{return NaN}}so.exports=ep(tp)});var oo=c((UN,io)=>{var rp=g(),np=v();function sp(t){try{return rp(t)?(typeof t=="bigint"&&(t=Number(t)),Math.acos(t)):NaN}catch{return NaN}}io.exports=np(sp)});var ao=c((PN,uo)=>{var ip=g(),op=v();function up(t){try{return ip(t)?(typeof t=="bigint"&&(t=Number(t)),Math.asin(t)):NaN}catch{return NaN}}uo.exports=op(up)});var lo=c((zN,co)=>{var ap=g(),cp=v();function lp(t){try{return ap(t)?(typeof t=="bigint"&&(t=Number(t)),Math.atan(t)):NaN}catch{return NaN}}co.exports=cp(lp)});var ho=c((CN,fo)=>{var fp=d(),hp=fe(),mp=p(),dp=b(),pp=y(),gp=Oe();function Ct(t,e){if(dp(t)){let r=Ct(t.values,e);return[t.index[r[0]],t.columns[r[1]]]}if(pp(t)){let r=Ct(t.values,e);return t.index[r]}fp(mp(t),"The `argmax` function only works on arrays, Series, and DataFrames!");try{let r=hp(t,gp(t,e));return r?r.length===0?void 0:r.length===1?r[0]:r:void 0}catch(r){console.log(r);return}}fo.exports=Ct});var kt=c((kN,mo)=>{var yp=A();function qp(t,e){return yp(t,{shouldDropNaNs:e}).min}mo.exports=qp});var go=c((JN,po)=>{var bp=d(),Np=fe(),vp=p(),wp=b(),Sp=y(),Op=kt();function Jt(t,e){if(wp(t)){let r=Jt(t.values,e);return[t.index[r[0]],t.columns[r[1]]]}if(Sp(t)){let r=Jt(t.values,e);return t.index[r]}bp(vp(t),"The `argmin` function only works on arrays, Series, and DataFrames!");try{let r=Np(t,Op(t,e));return r?r.length===0?void 0:r.length===1?r[0]:r:void 0}catch{return}}po.exports=Jt});var $t=c((RN,bo)=>{var yo=p(),Rt=ze(),Tp=b(),Yt=pe(),_p=z(),qo=g(),Dp=J(),Ip=y(),Kt=q();function B(t,e){if(Tp(t)||Ip(t))return t.apply(r=>B(r,e));if(yo(t))return t.map(r=>B(r,e));if(e==="null")return null;if(e==="number"){if(Kt(t))return NaN;let r=B(t,"boolean");if(Rt(r))return r?1:0;try{JSON.parse(t)}catch{let i=B(t,"date");if(Yt(i))return i.getTime()}let n=parseFloat(t);return isNaN(n)?NaN:n}if(e==="int"){let r=B(t,"number");return r>=0?Math.floor(r):Math.ceil(r)}if(e==="float")return B(t,"number");if(e==="bigint")return typeof t=="bigint"?t:BigInt(B(t,"int"));if(e==="boolean"){if(Rt(t))return t;if(qo(t))return t===0?!1:t===1?!0:null;try{let r=(typeof t=="object"?t.toString()==="null"?"false":JSON.stringify(t):t.toString()).trim().toLowerCase();return r==="true"||r==="yes"||r==="y"?!0:r==="false"||r==="no"||r==="n"?!1:null}catch{return null}}if(e==="date"){if(Yt(t))return t;if(Kt(t))return null;let r=parseFloat(t);if(!isNaN(r)){let s=new Date(t);return Yt(s)?s:null}let n=Date.parse(t);return isNaN(n)?null:new Date(n)}if(e==="object"){if(Dp(t))return t;let r=B(t,"boolean");if(Rt(r))return null;try{let s=B(t,"number");if(qo(s))return JSON.parse(t),null}catch{}let n=B(t,"date");if(n)return n;try{let s=JSON.parse(t);return yo(s)?s.map(i=>B(i,e)):s}catch{return null}}if(e==="string")return Kt(t)?_p(t,void 0)?"undefined":"null":t instanceof Date?t.toJSON():(()=>typeof t=="object"?t===null?"null":JSON.stringify(t):t.toString())()}bo.exports=B});var vo=c((YN,No)=>{var xp=g(),Ap=v();function Ep(t){try{return xp(t)?typeof t=="bigint"?t:Math.ceil(t):NaN}catch{return NaN}}No.exports=Ap(Ep)});var Oo=c((KN,So)=>{var Fp=$e(),wo=g(),jp=q(),Mp=v();function Bp(t,e){try{if(!wo(t))return NaN;if(typeof t=="bigint")return t;if(jp(e))e=1e-10;else if(!wo(e))return NaN;return Fp(t)<e?0:t}catch{return NaN}}So.exports=Mp(Bp)});var G=c(($N,To)=>{var Up=p(),Pp=b(),zp=g(),Cp=y(),kp=v();function Lt(t){if(Pp(t)||Cp(t)){let e=t.copy();return e.values=Lt(e.values),e}if(Up(t))return t.map(e=>Lt(e));try{let e=JSON.parse(t);return zp(e)?typeof e=="bigint"?Number(e):e>=0?Math.floor(e):Math.ceil(e):NaN}catch{return NaN}}To.exports=kp(Lt)});var Io=c((LN,Do)=>{var Jp=G(),Gt=g(),Rp=v();function _o(t,e,r){try{return Gt(t)?Gt(e)?Gt(r)?typeof t=="bigint"?BigInt(_o(Jp(t),e,r)):t<e?e:t>r?r:t:NaN:NaN:NaN}catch{return NaN}}Do.exports=Rp(_o)});var Ve=c((GN,Ao)=>{var xo=d(),Yp=P(),Kp=G(),$p=p(),Lp=b(),Gp=g(),Vp=y();function Ge(t,e){function*r(n,s){if(s>n.length)yield n;else if(s<=0)yield[];else if(n.length<2)yield n;else for(let i=0;i<n.length;i++){let o=n[i],u=n.slice(i+1);if(!(u.length<s-1)&&s-1>=0)for(let a of Ge(u,s-1))yield[o].concat(a)}}return Lp(t)||Vp(t)?Ge(t.values,e):(xo($p(t),"The `combinations` function only works on arrays, Series, and DataFrames!"),xo(Gp(e)&&Kp(e)===e&&e>=0,"`r` must be a non-negative integer!"),r(Yp(t),e))}function Wp(t,e){let r=[];for(let n of Ge(t,e))r.push(n.slice());return r}Ao.exports={combinations:Wp,combinationsIterator:Ge}});var Wt=c((VN,Eo)=>{var Hp=d(),Xp=p(),Qp=b(),Zp=z(),eg=y(),Vt=C();function tg(){let t=Object.values(arguments).map(r=>Qp(r)||eg(r)?Vt(r.values):(Hp(Xp(r),"The `intersect` function only works on arrays, Series, and DataFrames!"),Vt(r)));return Vt(t).filter(r=>t.every(n=>n.findIndex(s=>Zp(s,r))>-1))}Eo.exports=tg});var Ht=c((WN,Co)=>{var{DataFrame:Fo,Series:jo}=ue(),We=d(),rg=Wt(),Mo=p(),Bo=b(),Uo=y(),Po=q(),zo=w(),ae=class{constructor(e){We(Po(e)||e===ae.DROP_NAN_MODE||e===ae.DROP_MISSING_MODE,"The `mode` value passed into the `IndexMatcher` constructor must be undefined or one of [IndexMatcher.DROP_NAN_MODE, IndexMatcher.DROP_MISSING_MODE]! (By default, the mode is `Indexer.DROP_MISSING_MODE`.)"),this.mode=Po(e)?ae.DROP_NAN_MODE:e,this.index=null}fit(){let e=[];return Object.values(arguments).forEach(r=>{if(Mo(r)){let n=zo(r);if(n.length===1)r=new jo(r);else if(n.length===2)r=new Fo(r);else throw new Error("The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!")}We(Bo(r)||Uo(r),"The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!"),this.mode===ae.DROP_MISSING_MODE?e.push(r.dropMissing().index):e.push(r.dropNaN().index)}),this.index=rg(...e),this}transform(){We(!!this.index,"The IndexMatcher hasn't been fitted yet! Please call the `fit` method before calling the `transform` method.");let e=Object.values(arguments).map(r=>{if(Mo(r)){let n=zo(r);if(n.length===1)return new jo(r).get(this.index).values;if(n.length===2)return new Fo(r).get(this.index,null).values;throw new Error("The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!")}return We(Bo(r)||Uo(r),"The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!"),r.get(this.index,null)});return e.length===1?e[0]:e}fitAndTransform(){return this.fit(...arguments).transform(...arguments)}},_e=ae;ft(_e,"DROP_NAN_MODE","DROP_NAN_MODE"),ft(_e,"DROP_MISSING_MODE","DROP_MISSING_MODE");Co.exports=_e});var Xt=c((XN,$o)=>{var ko=d(),ng=Ht(),Jo=p(),He=g(),Ro=y(),Yo=w(),Ko=A();function Xe(t,e,r,n){if(Ro(t))return Xe(t.values,e,r,n);if(Ro(e))return Xe(t,e.values,r,n);if(ko(Jo(t)&&Jo(e)&&Yo(t).length===1&&Yo(e).length===1,"The `covariance` function only works on 1-dimensional arrays and Series!"),ko(t.length===e.length,"The two arrays or Series passed into the `covariance` function must have the same length!"),r)return Xe(...new ng().fitAndTransform(t,e),!1,n);try{let s=Ko(t,{stdev:n}),i=Ko(e,{stdev:n}),o=Number(s.mean),u=Number(i.mean);if(!He(o)||!He(u))return NaN;let a=Math.max(t.length,e.length),l=0;for(let f=0;f<a;f++){let h=t[f],m=e[f];if(!He(h))return NaN;if(!He(m))return NaN;typeof h=="bigint"&&(h=Number(h)),typeof m=="bigint"&&(m=Number(m)),l+=(h-o)*(m-u)}return n?[l/t.length,s,i]:l/t.length}catch{return NaN}}$o.exports=Xe});var Xo=c((QN,Ho)=>{var Lo=d(),sg=Xt(),Go=p(),Vo=y(),Wo=w();function Qt(t,e,r){if(Vo(t))return Qt(t.values,e,r);if(Vo(e))return Qt(t,e.values,r);Lo(Go(t)&&Go(e)&&Wo(t).length===1&&Wo(e).length===1,"The `correl` function only works on 1-dimensional arrays and Series!"),Lo(t.length===e.length,"The two arrays or Series passed into the `correl` function must have the same length!");try{let[s,i,o]=sg(t,e,r,!0),u=i.stdev*o.stdev;return s/u}catch{return NaN}}Ho.exports=Qt});var Zo=c((ZN,Qo)=>{var ig=g(),og=v();function ug(t){try{return ig(t)?(typeof t=="bigint"&&(t=Number(t)),Math.cos(t)):NaN}catch{return NaN}}Qo.exports=og(ug)});var tu=c((e0,eu)=>{eu.exports=Object.freeze({boolean:"boolean",date:"date",null:"null",number:"number",object:"object",string:"string"})});var uu=c((t0,ou)=>{var ag=d(),ru=p(),nu=b(),cg=z(),su=y(),iu=C();function Zt(t,e){if(nu(t)||su(t))return Zt(t.values,e);if(nu(e)||su(e))return Zt(t,e.values);ag(ru(t)&&ru(e),"The `diff` function only works on arrays, Series, and DataFrames!");let r=iu(t),n=iu(e),s=[];return r.forEach(i=>{n.findIndex(o=>cg(o,i))<0&&s.push(i)}),s}ou.exports=Zt});var Qe=c((r0,lu)=>{var au=g(),lg=v();function cu(t,e){try{if(!au(t))return NaN;if(!au(e))return NaN;if(typeof t=="bigint"||typeof e=="bigint"){let r=cu(Number(t),Number(e));try{return BigInt(r)}catch{return r}}return Math.pow(t,e)}catch{return NaN}}lu.exports=lg(cu)});var er=c((n0,hu)=>{var fg=g(),hg=v();function fu(t){try{if(!fg(t))return NaN;if(typeof t=="bigint"){let e=fu(Number(t));try{return BigInt(e)}catch{return e}}return Math.sqrt(t)}catch{return NaN}}hu.exports=hg(fu)});var tr=c((s0,mu)=>{var mg=g(),dg=v();function pg(){try{let t=Object.values(arguments);if(t.length===0)return NaN;let e=!1,r=1;for(let n of t){if(!mg(n))return NaN;typeof n=="bigint"&&(e=!0,n=Number(n)),r*=n}if(e)try{return BigInt(r)}catch{}return r}catch{return NaN}}mu.exports=dg(pg)});var ce=c((i0,du)=>{var gg=tr();function yg(){return gg(...arguments)}du.exports=yg});var rr=c((o0,pu)=>{var qg=Le(),bg=ce();function Ng(t,e){return qg(t,bg(e,-1))}pu.exports=Ng});var Ze=c((u0,gu)=>{var vg=A();function wg(t,e){return vg(t,{shouldDropNaNs:e}).sum}gu.exports=wg});var Su=c((a0,wu)=>{var Sg=$e(),Og=d(),yu=p(),qu=b(),Tg=z(),bu=g(),Nu=y(),_g=Qe(),vu=w(),Dg=er(),Ig=rr(),xg=Ze();function nr(t,e){if(bu(t)&&bu(e))return Sg(t-e);if(qu(t)||Nu(t))return nr(t.values,e);if(qu(e)||Nu(e))return nr(t,e.values);yu(t)&&yu(e)&&Og(Tg(vu(t),vu(e)),"If passing two arrays, Series, or DataFrames into the `distance` function, then those objects must have the same shape!");try{return Dg(xg(_g(Ig(t,e),2)))}catch{return NaN}}wu.exports=nr});var Tu=c((c0,Ou)=>{var Ag=Qe(),Eg=ce();function Fg(t,e){return Eg(t,Ag(e,-1))}Ou.exports=Fg});var or=c((l0,Au)=>{var{DataFrame:_u,Series:Du}=ue(),sr=d(),Iu=p(),ir=b(),et=y(),jg=ce(),tt=w(),Mg=Ze(),xu=X();function V(t,e){if(ir(t)){let s=V(t.values,e);if(tt(s).length===1){let i=new Du(s);return i.name=et(e)?e.name:i.name,i.index=t.index.slice(),i}else{let i=new _u(s);return i.index=t.index.slice(),ir(e)&&(i.columns=e.columns.slice()),i}}if(ir(e)){let s=V(t,e.values);if(tt(s).length===1){let i=new Du(s);return i.name=et(t)?t.name:i.name,i.index=e.columns.slice(),i}else{let i=new _u(s);return i.columns=e.columns.slice(),i}}if(et(t))return V(t.values,e);if(et(e))return V(t,e.values);sr(Iu(t)&&Iu(e),"The `dot` function only works on arrays, Series, and DataFrames!");let r=tt(t),n=tt(e);if(sr(r.length<=2&&n.length<=2,"I'm not smart enough to know how to get the dot-product of arrays that have more than 2 dimensions. Sorry for the inconvenience! Please only pass 1- or 2-dimensional arrays into the `dot` function!"),sr(r[r.length-1]===n[0],`There's a dimension misalignment in the two arrays you passed into the \`dot\` function. (${r[r.length-1]} !== ${n[0]})`),r.length===1&&n.length===1)return Mg(jg(t,e));if(r.length===1&&n.length===2)return xu(e).map(s=>V(t,s));if(r.length===2&&n.length===1)return t.map(s=>V(s,e));if(r.length===2&&n.length===2){let s=xu(e),i=[];for(let o=0;o<t.length;o++){let u=[];for(let a=0;a<s.length;a++)u.push(V(t[o],s[a]));i.push(u)}return i}}Au.exports=V});var ur=c((f0,Fu)=>{var Bg=d(),Ug=p(),Pg=b(),zg=y(),Cg=q();function Eu(t){if(Pg(t)||zg(t))return t.dropMissing(...Object.values(arguments).slice(1));Bg(Ug(t),"The `dropMissing` function only works on arrays, Series, and DataFrames!");let e=[];return t.forEach(r=>{try{return e.push(Eu(r))}catch{Cg(r)||e.push(r)}}),e}Fu.exports=Eu});var ku=c((h0,Cu)=>{var ju=d(),Mu=p(),Bu=b(),kg=z(),Uu=y(),Pu=q(),zu=w();function rt(t,e){if(Bu(t)||Uu(t))return rt(t.values,e);if(Bu(e)||Uu(e))return rt(t,e.values);ju(Mu(t)&&Mu(e),"The `dropMissingPairwise` function only works on arrays, Series, and DataFrames!"),ju(kg(zu(t),zu(e)),"The two arrays, Series, and/or DataFrames passed into the `dropMissingPairwise` function must have the same shape!");let r=[],n=[];for(let s=0;s<t.length;s++)try{let[i,o]=rt(t[s],e[s]);r.push(i),n.push(o)}catch{!Pu(t[s])&&!Pu(e[s])&&(r.push(t[s]),n.push(e[s]))}return[r,n]}Cu.exports=rt});var Vu=c((m0,Gu)=>{var Ju=d(),Ru=p(),Yu=b(),Jg=z(),Ku=g(),$u=y(),Lu=w();function nt(t,e){if(Yu(t)||$u(t))return nt(t.values,e);if(Yu(e)||$u(e))return nt(t,e.values);Ju(Ru(t)&&Ru(e),"The `dropNaNPairwise` only works on arrays, Series, and DataFrames!"),Ju(Jg(Lu(t),Lu(e)),"The two arrays, Series, and/or DataFrames passed into the `dropNaNPairwise` must have the same shape!");let r=[],n=[];for(let s=0;s<t.length;s++)try{let[i,o]=nt(t[s],e[s]);r.push(i),n.push(o)}catch{Ku(t[s])&&Ku(e[s])&&(r.push(t[s]),n.push(e[s]))}return[r,n]}Gu.exports=nt});var Hu=c((d0,Wu)=>{var Rg=ur();function Yg(t){return Rg(t)}Wu.exports=Yg});var cr=c((p0,Zu)=>{var Xu=d(),Qu=p(),Kg=b(),$g=D(),Lg=y();function ar(t,e){if(Kg(t)||Lg(t))return ar(t.values,e);Xu(Qu(t),"The first argument passed into the `every` function must be an array, Series, or DataFrame!"),Xu($g(e),"The second argument passed into the `every` function must be a function!");for(let r of t)if(Qu(r)){if(!ar(r,e))return!1}else if(!e(r))return!1;return!0}Zu.exports=ar});var ta=c((g0,ea)=>{var Gg=g(),Vg=v();function Wg(t){try{if(!Gg(t))return NaN;if(typeof t=="bigint"){if(t===0n)return 1n;t=Number(t)}return Math.exp(t)}catch{return NaN}}ea.exports=Vg(Wg)});var sa=c((y0,na)=>{var ra=G(),Hg=v();function lr(t){try{return typeof t=="bigint"?BigInt(lr(ra(t))):t!==ra(t)?NaN:t<=1?1:t*lr(t-1)}catch{return NaN}}na.exports=Hg(lr)});var aa=c((q0,ua)=>{var Xg=d(),ia=p(),Qg=b(),Zg=D(),oa=J(),ey=y();function fr(t,e){if(Qg(t)||ey(t))return fr(t.values,e);if(Xg(oa(t)||ia(t),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `find` function!"),!Zg(e)){let s=e;e=i=>i===s}function r(s,i,o){if(o=o||[],o.indexOf(s)>-1)return null;if(oa(s)){o.push(s);let u=Object.keys(s).concat(Object.getOwnPropertySymbols(s));for(let a=0;a<u.length;a++){let l=u[a],f=s[l];if(i(f))return f;let h=r(f,i,o);if(h)return h}}else if(ia(s)){o.push(s);for(let u=0;u<s.length;u++){let a=s[u];if(i(a))return a;let l=r(a,i,o);if(l)return l}}else if(i(s))return s;return null}function n(s){try{return e(s)}catch{return!1}}return r(t,n)}ua.exports=fr});var ha=c((b0,fa)=>{var ty=d(),ca=p(),ry=b(),ny=D(),la=J(),sy=y();function hr(t,e){if(ry(t)||sy(t))return hr(t.values,e);if(ty(la(t)||ca(t),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `findAll` function!"),!ny(e)){let i=e;e=o=>o===i}function r(i,o,u){if(u=u||[],u.indexOf(i)>-1)return null;if(la(i)){u.push(i);let a=Object.keys(i).concat(Object.getOwnPropertySymbols(i)),l=[];for(let f=0;f<a.length;f++){let h=a[f],m=i[h],N=!1;o(m)&&(l.push(m),N=!0);let O=r(m,o,u);O&&O.length>0&&O.slice(N?1:0).forEach(_=>l.push(_))}return l}else if(ca(i)){u.push(i);let a=[];for(let l=0;l<i.length;l++){let f=i[l],h=!1;o(f)&&(a.push(f),h=!0);let m=r(f,o,u);m&&m.length>0&&m.slice(h?1:0).forEach(N=>a.push(N))}return a}else if(o(i))return[i];return null}function n(i){try{return e(i)}catch{return!1}}let s=r(t,n);return s&&s.length>0?s:null}fa.exports=hr});var da=c((N0,ma)=>{var iy=g(),oy=v();function uy(t){try{if(t==="Infinity")return 1/0;if(t==="-Infinity")return-1/0;let e=JSON.parse(t);return iy(e)?e:NaN}catch{return NaN}}ma.exports=oy(uy)});var ga=c((v0,pa)=>{var ay=g(),cy=v();function ly(t){try{return ay(t)?typeof t=="bigint"?t:Math.floor(t):NaN}catch{return NaN}}pa.exports=cy(ly)});var st=c((w0,ya)=>{var fy=g(),hy=me(),my=Ie();function dy(t){fy(t)&&(t=[t]);let e=[],r=hy(t);for(let n=0;n<r;n++)e.push(0);return my(e,t)}ya.exports=dy});var Na=c((S0,ba)=>{var it=d(),qa=G(),py=g(),gy=q(),yy=st();function qy(t){typeof t=="bigint"&&(t=qa(t)),it(!gy(t),"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),it(py(t),"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),it(qa(t)===t,"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),it(t>0,"You must pass an integer greater than 0 (representing the size) into the `identity` function!");let e=yy([t,t]);for(let r=0;r<t;r++)e[r][r]=1;return e}ba.exports=qy});var wa=c((O0,va)=>{va.exports=["true","false","yes","no"]});var Oa=c((T0,Sa)=>{Sa.exports=["null","none","nan","na","n/a","","undefined"]});var xa=c((_0,Ia)=>{var by=Te(),Ny=d(),vy=wa(),wy=$t(),Sy=xe(),Oy=cr(),Ty=P(),Ta=G(),mr=p(),_y=b(),_a=pe(),Da=g(),Dy=y(),Iy=x(),xy=Oa();function ot(t){return t.type==="number"&&(typeof t.value<"u"?t.isInteger=Ta(t.value)===t.value:t.isInteger=Oy(t.values,e=>Da(e)?Ta(e)===e:!0)),t}function ut(t){if(_y(t)){let i=t.copy(),o=ut(t.values);return i.values=o.values,ot({type:o.type,values:i})}if(Dy(t)){let i=t.copy(),o=ut(t.values);return i.values=o.values,ot({type:o.type,values:i})}if(!mr(t)){let i=ut([t]);return i.value=i.values[0],delete i.values,ot(i)}Ny(mr(t),"The `inferType` function only works on arrays, Series, and DataFrames!");let e=Ty(t).map(i=>{if(i===void 0)return"null";try{if(typeof i=="object"){let a=new Date(i.getTime());if(_a(a))return"date"}}catch{}Iy(i)||(typeof i=="bigint"?i=i.toString()+"n":i=JSON.stringify(i));let u=i.toLowerCase().trim();if(xy.indexOf(u)>-1)return"null";if(vy.indexOf(u)>-1)return"boolean";try{if(i.match(/^-?\d+n$/g))return"bigint";let a=JSON.parse(i);return Da(a)?"number":typeof a=="object"?mr(a)?"string":"object":"string"}catch{let l=new Date(i);return _a(l)?"date":"string"}}),r=Sy(e),s=r.values.toSorted((i,o)=>r.get(o)-r.get(i))[0];return ot({type:s,values:by(t,i=>wy(i,s))})}Ia.exports=ut});var Ma=c((D0,ja)=>{var Aa=Le(),Q=d(),Ay=or(),Ey=p(),Fy=b(),Ea=g(),Fa=ce(),jy=w();function at(t){if(Fy(t)){let r=t.copy();return r.values=at(r.values),r}Q(Ey(t),"The `inverse` function only works on square 2-dimensional arrays or DataFrames!");let e=jy(t);if(Q(e.length===2,"The array passed into the `inverse` function must be exactly two-dimensional and square!"),Q(e[0]===e[1],"The array passed into the `inverse` function must be exactly two-dimensional and square!"),Q(e[0]>=0,"The array passed into the `inverse` function must be exactly two-dimensional and square!"),e[0]===0)return t;if(e[0]===1){Q(t[0][0]!==0,"This matrix cannot be inverted!");let r=t[0][0];return typeof r=="bigint"&&(r=Number(r)),1/r}else if(e[0]===2){let r=t[0][0],n=t[0][1],s=t[1][0],i=t[1][1];typeof r=="bigint"&&(r=Number(r)),typeof n=="bigint"&&(n=Number(n)),typeof s=="bigint"&&(s=Number(s)),typeof i=="bigint"&&(i=Number(i));let o=r*i-n*s;Q(o!==0,"This matrix cannot be inverted!");let u=[[i,-n],[-s,r]];return Fa(u,1/o)}else if(e[0]>1){let r=(n,s)=>Ea(n)||Ea(s)?Fa(n,s):Ay(n,s);for(let n=1;n<e[0]-1;n++)try{let s=t.slice(0,n).map(_=>_.slice(0,n)),i=t.slice(0,n).map(_=>_.slice(n,e[0])),o=t.slice(n,e[0]).map(_=>_.slice(0,n)),u=t.slice(n,e[0]).map(_=>_.slice(n,e[0])),a=at(s),l=at(Aa(u,r(-1,r(r(o,a),i)))),f=Aa(a,r(r(r(r(a,i),l),o),a)),h=r(-1,r(r(a,i),l)),m=r(-1,r(r(l,o),a)),N=l;return f.map((_,lt)=>_.concat(h[lt])).concat(m.map((_,lt)=>_.concat(N[lt])))}catch{}Q(!1,"This matrix cannot be inverted!")}}ja.exports=at});var Ua=c((I0,Ba)=>{var My=new Function(`
14
+ \x1B[0m`)}},U=Cn;function l(e,n){if(!e)throw new U(n)}function Yn(e){return e===null||typeof e>"u"}var g=Yn,Xe=[Array,ArrayBuffer,BigInt64Array,BigUint64Array,Float32Array,Float64Array,Int16Array,Int32Array,Int8Array,Uint16Array,Uint32Array,Uint8Array,Uint8ClampedArray],qn=Xe.map(e=>e.name);function Un(e){try{return e instanceof Array?!0:g(e.constructor)?!1:Xe.indexOf(e.constructor)>-1||qn.indexOf(e.constructor.name)>-1}catch{return!1}}var f=Un;function Wn(e){try{return!!e._symbol&&e._symbol===Symbol.for("@jrc03c/js-math-tools/dataframe")}catch{return!1}}var b=Wn;function Kn(e){try{return!!e._symbol&&e._symbol===Symbol.for("@jrc03c/js-math-tools/series")}catch{return!1}}var y=Kn;function Ze(e){if(b(e)||y(e))return Ze(e.values);l(f(e),"The `flatten` function only works on arrays, Series, and DataFrames!");function n(t){let r=[];return t.forEach(a=>{f(a)?r=r.concat(n(a)):r.push(a)}),r}return n(e)}var A=Ze;function Gn(e){return typeof e=="number"&&!isNaN(e)||typeof e=="bigint"}var d=Gn;function Hn(e){return typeof e=="function"}var D=Hn;function Ln(e){return typeof e=="object"&&!g(e)&&!f(e)}var $=Ln;function xe(e,n){if(b(e)){let i=xe(e.values,n);return i.length>0&&d(i[0])&&i[0]>=0&&i[0]<e.index.length&&(i[0]=e.index[i[0]]),i.length>1&&d(i[1])&&i[1]>=0&&i[1]<e.columns.length&&(i[1]=e.columns[i[1]]),i}if(y(e)){let i=xe(e.values,n);return i.length>0&&d(i[0])&&i[0]>=0&&i[0]<e.index.length&&(i[0]=e.index[i[0]]),i}if(l($(e)||f(e),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `indexOf` function!"),!D(n)){let i=n;n=s=>s===i}function t(i,s,o){if(o=o||[],o.indexOf(i)>-1)return null;if($(i)){o.push(i);let u=Object.keys(i).concat(Object.getOwnPropertySymbols(i));for(let h=0;h<u.length;h++){let c=u[h],m=i[c];if(s(m))return[c];let p=t(m,s,o);if(p&&p.length>0)return[c].concat(p)}}else if(f(i)){o.push(i);for(let u=0;u<i.length;u++){let h=i[u];if(s(h))return[u];let c=t(h,s,o);if(c&&c.length>0)return[u].concat(c)}}else if(s(i))return[];return null}function r(i){try{return n(i)}catch{return!1}}let a=t(e,r);return a&&a.length>0?a:null}var pe=xe;function j(e){function n(t){if(typeof t=="object"){if(t===null)return null;if(f(t))return t instanceof Array?t.map(a=>j(a)):t.slice();if(y(t)){let a=t.copy();return a.values=j(a.values),a}if(b(t)){let a=t.copy();return a.values=j(t.values),a}if(t instanceof Date)return new Date(t.getTime());t=V(t);let r={};return Object.keys(t).concat(Object.getOwnPropertySymbols(t)).forEach(a=>{r[a]=j(t[a])}),r}else return t}return n(V(e))}function V(e){function n(a,i,s){if(i=i||[],s=s||"",i.indexOf(a)>-1){let o=s.split("/").slice(s.startsWith("/")?1:0);if(o.some((u,h)=>{let c=o.slice(0,o.length-h-1),m=t;return c.forEach(p=>{m=m[p]}),m===a}))return`<reference to "${t===a?"/":"/"+pe(t,a).join("/")}">`}return typeof a=="object"?a===null?null:(i.push(a),f(a)?typeof a.constructor<"u"&&a.constructor.name!=="Array"?a.slice():a.map((o,u)=>n(o,i,s+"/"+u)):(Object.keys(a).concat(Object.getOwnPropertySymbols(a)).forEach(o=>{a[o]=n(a[o],i,s+"/"+o.toString())}),a)):a}let t=e,r=n(t);if(b(e)){let a=e.copy();a._values=r.values,a._columns=r.columns,a._index=r.index,r=a}if(y(e)){let a=e.copy();a.name=r.name,a._values=r.values,a._index=r.index,r=a}return r}function en(e){if(b(e)||y(e))return en(e.values);l(f(e),"The `isNested` function only works on arrays, Series, and DataFrames!");for(let n=0;n<e.length;n++)if(f(e[n]))return!0;return!1}var Be=en,H="You must pass a natural number or a one-dimensional array of natural numbers into the `ndarray` function!";function nn(e){l(!g(e),H),f(e)||(e=[e]),l(!Be(e),H),l(e.length>0,H);let n=e[0];if(typeof n=="bigint"&&(n=Number(n)),l(d(n),H),l(n>=0,H),l(Math.floor(n)===n,H),l(n!==1/0,"We can't create an array containing an infinite number of values!"),e.length===1){let t=[];for(let r=0;r<n;r++)t.push(void 0);return t}else{let t=[];for(let r=0;r<n;r++)t.push(nn(e.slice(1)));return t}}var B=nn;function tn(e,n){if(b(e)||y(e))return tn(e.values,n);l(f(e),"The `product` function only works on arrays, Series, and DataFrames!");try{if(e.length===0)return NaN;let t=A(e),r=!1,a=1;for(let i of t){if(!d(i))if(n)i=1;else return NaN;typeof i=="bigint"&&(r=!0,i=Number(i)),a*=i}if(r)try{return BigInt(a)}catch{}return a}catch{return NaN}}var ye=tn;function Qn(e){return d(e)&&(e>=0?Math.floor(e)===e:Math.ceil(e)===e)}var rn=Qn;function Vn(e){return rn(e)&&e>0}var Xn=Vn;function an(e){if(f(e)){let n=an(e[0]);return[e.length].concat(n||[])}else return}function sn(e){return b(e)||y(e)?sn(e.values):(l(f(e),"The `shape` function only works on arrays, Series, and DataFrames!"),an(e))}var v=sn;function we(e,n){if(b(e)||y(e))return we(e.values,n);if(l(f(e),"The first argument passed into the `reshape` function must be an array!"),d(n)&&(n=[n]),l(f(n),"The second argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),l(v(n).length===1,"The first argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),n=n.map(i=>(typeof i=="bigint"&&(i=Number(i)),l(Xn(i),"The first argument passed into the `reshape` function must be a whole number or a one-dimensional array of whole numbers!"),Number(i))),n.length===0)return A(e);let t=A(e);if(n.length===1&&n[0]===t.length)return t;l(ye(n)===t.length,"The new shape doesn't match the number of values available in `x` (the first argument passed into the `reshape` function)!");let r=[],a=Math.floor(t.length/n[0]);for(let i=0;i<n[0];i++){let s=t.slice(i*a,(i+1)*a);r.push(we(s,n.slice(1)))}return r}var Ae=we,on=Math.pow(2,64),_=[];be(Math.floor(Math.random()*on));function Zn(e,n){e=M(e);function t(){e+=M("0x9e3779b97f4a7c15");let a=j(e);return a=(a^a>>BigInt(30))*M("0xbf58476d1ce4e5b9"),a=(a^a>>BigInt(27))*M("0x94d049bb133111eb"),a^a>>BigInt(31)}let r=[];for(let a=0;a<n;a++)r.push(t());return r}function M(e){return BigInt.asUintN(64,BigInt(e))}function qe(e,n){return e=M(e),n=BigInt(n),M(M(e<<n)|M(e>>M(BigInt(64)-n)))}function be(e){if(typeof e=="bigint"&&(e=Number(e)),g(e))return j(_);{l(d(e),"If passing a value into the `seed` function, then that value must be an integer!");let n=Zn(Math.floor(e),4);_[0]=n[0],_[1]=n[1],_[2]=n[2],_[3]=n[3]}}function Ue(){let e=M(qe(_[0]+_[3],23)+_[0]),n=M(_[1]<<BigInt(17));return _[2]=M(_[2]^_[0]),_[3]=M(_[3]^_[1]),_[1]=M(_[1]^_[2]),_[0]=M(_[0]^_[3]),_[2]=M(_[2]^n),_[3]=qe(_[3],45),Math.floor(Number(e))/on}function W(e){return g(e)?Ue():(f(e)||(e=[e]),Ae(B(ye(e)).map(Ue),e))}function et(e){return e instanceof Date&&e.toString()!=="Invalid Date"}var R=et,We=["number","int","float","bigint"];function nt(e,n){function t(r,a){let i=typeof r,s=typeof a;if(i!==s&&!We.includes(i)&&!We.includes(s))return!1;if(i==="undefined"&&s==="undefined")return!0;if(i==="boolean"||i==="symbol")return r===a;if(i==="number"||i==="bigint")try{let o=r.toString(),u=a.toString();return o===u}catch{return!1}if(i==="string"||i==="function")return r===a;if(i==="object"){if(r===null||a===null)return r===null&&a===null;{if(R(r))return R(a)?r.getTime()===a.getTime():!1;if(R(a))return!1;if(r instanceof RegExp&&a instanceof RegExp)return r.toString()===a.toString();if(f(r)!==f(a))return!1;let o=Object.keys(r).concat(Object.getOwnPropertySymbols(r)),u=Object.keys(a).concat(Object.getOwnPropertySymbols(a));if(o.length!==u.length)return!1;for(let h=0;h<o.length;h++){let c=o[h];if(!t(r[c],a[c]))return!1}return!0}}}try{return t(e,n)}catch{return t(V(e),V(n))}}var J=nt;function te(e){let n="abcdefg1234567890",t="";for(;t.length<e;)t+=n[Math.floor(Math.random()*n.length)];return t}var tt=te(16),rt=te(16),at=te(16),it=te(16),st=te(16),ot=class{constructor(){this.clear()}get counts(){return this.values.map(e=>this.get(e))}get values(){return Object.values(this.valuesDict)}clear(){return this.countsDict={},this.valuesDict={},this}count(e){for(let n of e)f(n)?this.count(n):this.increment(n);return this}delete(e){let n=this.getStandardizedKey(e);return delete this.countsDict[n],delete this.valuesDict[n],this}get(e){return this.countsDict[this.getStandardizedKey(e)]||0}getStandardizedKey(e){return typeof e=="object"&&e===null?tt:g(e)?rt:D(e)?e.toString():typeof e=="symbol"?e.toString()+" - "+st:e===1/0?at:e===-1/0?it:typeof e=="bigint"?e.toString():b(e)?e.toJSONString():y(e)?JSON.stringify(e.toObject()):JSON.stringify(e)}has(e){return!g(this.countsDict[this.getStandardizedKey(e)])}increment(e){return this.set(e,this.get(e)+1)}set(e,n){let t=this.getStandardizedKey(e);return this.countsDict[t]=n,this.valuesDict[t]=e,this}toArray(){return this.values.map(e=>({value:e,count:this.get(e)}))}toObject(){let e={};return this.values.forEach(n=>{e[n]=this.get(n)}),e}},lt=ot;function ut(e,n){n=n||{};let t=new lt,r={},a=A(e),i=[],s=-1/0,o=1/0,u=!1,h=0;for(let m of a){if(typeof m=="bigint"&&(u=!0),!n.shouldDropNaNs||d(m))try{m>s&&(s=m),m<o&&(o=m),h+=Number(m),i.push(m)}catch{s=NaN,o=NaN,h=NaN}t.increment(m)}let c=h/i.length;if(r.counts=t,r.max=s,r.mean=c,r.min=o,r.n=a.length,r.sum=h,isNaN(r.mean)&&(r.max=NaN,r.min=NaN),n.shouldDropNaNs&&(r.nWithoutNaNs=i.length),n.mode){let m=Array.from(t.values.map(N=>[N,t.get(N)])).toSorted((N,z)=>z[1]-N[1]),p=m[0][1],x=[];for(let N of m)if(N[1]==p)x.push(N[0]);else break;r.mode=x.toSorted()}if(n.median)if(isNaN(c))r.median=NaN;else{let m=i.toSorted((x,N)=>Number(x)-Number(N)),p=Math.floor(m.length/2);if(m.length%2===0){let x=m[p-1],N=m[p];if(r.median=(Number(x)+Number(N))/2,u&&typeof x=="bigint"&&typeof N=="bigint")try{r.median=BigInt(r.median)}catch{}}else r.median=m[p]}if(n.stdev||n.variance){let m=0;for(let x of i)m+=Math.pow(Number(x)-c,2);m/=i.length;let p=Math.sqrt(m);r.stdev=p,r.variance=m}if(u){try{r.sum=BigInt(r.sum)}catch{}try{r.mean=BigInt(r.mean)}catch{}n.mode&&(r.mode=r.mode.map(m=>{try{return BigInt(m)}catch{return m}}))}return r}var F=ut;function ht(e,n){let{counts:t}=F(e);return g(n)||(D(n)?t.values.forEach(r=>{n(r)||t.delete(r)}):t.values.forEach(r=>{J(r,n)||t.delete(r)})),t}var fe=ht;function Oe(e){if(b(e)||y(e))return Oe(e.values);if(f(e)){let n=!1,t=!1,r=null;for(let a of e){if(Oe(a))return!0;if(f(a)){if(r===null)r=a.length;else if(a.length!==r)return!0;n=!0}else t=!0;if(n&&t)return!0}}return!1}function ct(e){return Oe(V(e))}var re=ct;function _e(e){if(b(e)||y(e)){let t=e.copy();return t.values=_e(t.values),t.index=_e(t.index),t}l(f(e),"The `reverse` function only works on arrays, Series, and DataFrames!");let n=[];for(let t=e.length-1;t>=0;t--)n.push(e[t]);return n}var q=_e;function ft(e,n,t=1){l(!g(e)&&!g(n)&&!g(t),"You must pass two numbers and optionally a step value to the `range` function!"),l(d(e)&&d(n)&&d(t),"You must pass two numbers and optionally a step value to the `range` function!"),l(t>0,"The step value must be greater than 0! (NOTE: The step value is a magnitude; it does not indicate direction.)");let r=!1,a=typeof e=="bigint"||typeof n=="bigint"||typeof t=="bigint";if(e=Number(e),n=Number(n),t=Number(t),e>n){r=!0;let s=e;e=n+t,n=s+t}let i=[];for(let s=e;s<n;s+=t)if(a)try{i.push(BigInt(s))}catch{i.push(s)}else i.push(s);return r&&(i=q(i)),i}var T=ft;function ae(e){let n="abcdefg1234567890",t="";for(;t.length<e;)t+=n[Math.floor(Math.random()*n.length)];return t}var mt=ae(256),dt=ae(256),gt=ae(256),pt=ae(256),yt=ae(256);function ln(e){if(b(e)||y(e))return ln(e.values);l(f(e),"The `set` function only works on arrays, Series, and DataFrames!");let n=[],t={};return A(e).forEach(r=>{let a=typeof r=="object"&&r===null?mt:g(r)?dt:D(r)?r.toString():typeof r=="symbol"?r.toString()+" - "+yt:r===1/0?gt:r===-1/0?pt:typeof r=="bigint"?r.toString():b(r)?r.toJSONString():y(r)?JSON.stringify(r.toObject()):JSON.stringify(r);t[a]||n.push(r),t[a]=!0}),n}var P=ln;function un(e,n,t){if(g(t)&&(t=0),l(t===0||t===1||t==="vertical"||t==="horizontal",'The only valid axis values for use when appending data to a DataFrame are 0, 1, "vertical", and "horizontal". Note that 0 == "horizontal" and 1 == "vertical".'),f(n)){l(!re(n),"The array of data you're trying to append to this DataFrame is jagged!");let r=v(n);if(r.length===1)if(t===0){let a=e.copy();a._values.push(n);let i=Math.max(e.shape[1],r[0]);for(a._values.forEach(s=>{for(;s.length<i;)s.push(void 0)});a._index.length<a._values.length;)a._index.push("row"+a._index.length);for(;a._columns.length<i;)a._columns.push("col"+a._columns.length);return a}else{let a=Math.max(e.shape[0],r[0]),i=e.copy();for(T(0,a).forEach(s=>{s>=i._values.length&&i._values.push(B(e.shape[1])),i._values[s].push(n[s])});i._index.length<i._values.length;)i._index.push("row"+i._index.length);for(;i._columns.length<i._values[0].length;)i._columns.push("col"+i._columns.length);return i}else if(r.length===2)if(t===0){let a=Math.max(...n.map(s=>s.length).concat([e.shape[1]])),i=e.copy();for(i._values=i._values.concat(n).map(s=>{for(;s.length<a;)s.push(void 0);return s});i._index.length<i._values.length;)i._index.push("row"+i._index.length);for(;i._columns.length<a;)i._columns.push("col"+i._columns.length);return i}else{let a=Math.max(...n.map(o=>o.length))+e.shape[1],i=Math.max(e.shape[0],r[0]),s=e.copy();for(T(0,i).forEach(o=>{for(o>=s._values.length&&s._values.push(B(e.shape[1])),s._values[o]=s._values[o].concat(n[o]);s._values[o].length<a;)s._values[o].push(void 0)});s._index.length<s._values.length;)s._index.push("row"+s._index.length);for(;s._columns.length<a;)s._columns.push("col"+s._columns.length);return s}else throw new U("Only 1- and 2-dimensional arrays can be appended to a DataFrame!")}else if(y(n)){let r=un(e,n.values,t);return t===0?r.index[r.index.length-1]=r.index.indexOf(n.name)>-1?n.name+" (2)":n.name:r.columns[r.columns.length-1]=r.columns.indexOf(n.name)>-1?n.name+" (2)":n.name,r}else if(b(n))if(t===0){let r=e.copy(),a=P(r._columns.concat(n._columns)).length;for(r._values.forEach(i=>{for(;i.length<a;)i.push(void 0)}),n.apply(i=>{let s=i.copy(),o=[];r._columns.forEach(u=>{let h=s._index.indexOf(u);h>-1?(o.push(s._values[h]),s._values.splice(h,1),s._index.splice(h,1)):o.push(void 0)}),r._values.push(o.concat(s._values))},1),r._columns=r._columns.concat(n._columns.filter(i=>r._columns.indexOf(i)<0));r._index.length<r._values.length;){let i="row"+r._index.length;r._index.push(i+(e._index.indexOf(i)>-1?" (2)":""))}return r}else{let r=e.copy();return r._index.forEach((a,i)=>{let s=n._index.indexOf(a);s>-1?r._values[i]=r._values[i].concat(n._values[s]):r._values[i]=r._values[i].concat(B(n.shape[1]))}),n._index.forEach((a,i)=>{r._index.indexOf(a)<0&&(r._index.push(a),r._values.push(B(r._columns.length).concat(n._values[i])))}),r._columns=r._columns.concat(n._columns.map(a=>a+(r._columns.indexOf(a)>-1?" (2)":""))),r}else throw new U("Only 1- or 2-dimensional arrays, Series, and DataFrames can be appended to a DataFrame!")}var bt=un;function vt(e,n,t,r,a){if(a=a||0,l(D(r),"The first parameter to the `apply` method must be a function."),l(a===0||a===1,"The second parameter to the `apply` method (the `axis`) must be 0 or 1."),a===0){let i={},s;if(t.columns.forEach((o,u)=>{let h=new n(t.values.map(m=>m[u]));h.name=o,h.index=t.index;let c=r(h,u,t);c instanceof n?i[o]=c.values:i[o]=c,g(s)&&(s=c instanceof n||f(c))}),s){let o=new e(i);return o.index=t.index,o}else{let o=new n(t.columns.map(u=>i[u]));return o.index=t.columns,o}}else if(a===1){let i,s=t.values.map((o,u)=>{let h=new n(o);h.name=t.index[u],h.index=t.columns;let c=r(h,u,t);return g(i)&&(i=c instanceof n||f(c)),c instanceof n?c.values:c});if(i){let o=new e(s);return o.index=t.index,o.columns=t.columns,o}else{let o=new n(s);return o.index=t.index,o}}}var Nt=vt;function xt(e){return typeof e=="string"}var w=xt;function wt(e,n,t,r,a){let i=o=>o instanceof e,s=o=>o instanceof n;if(g(a)){if(i(r)||s(r))return t.append(r,1);if($(r)){let o=Math.max(...Object.keys(r).concat(Object.getOwnPropertySymbols(r)).map(u=>r[u].length));return Object.keys(r).concat(Object.getOwnPropertySymbols(r)).forEach(u=>{for(;r[u].length<o;)r[u].push(void 0)}),t.append(new e(r),1)}else throw new U("You must pass a DataFrame, Series, or object into the `assign` method!")}else{l(w(r),"If passing two arguments into the `assign` method, then the first argument must be a string name!"),l(f(a)&&!re(a)&&v(a).length===1,"If passing two arguments into the `assign` method, then the second argument must be a 1-dimensional array!");let o=t.append(a,1);return o.columns[o.columns.length-1]=r,o}}var Ot=wt;function _t(e,n){if(n.isEmpty)return new e;let t=new e(j(n.values));return t.columns=n.columns.slice(),t.index=n.index.slice(),t}var St=_t;function Tt(e,n,t,r,a){g(r)&&(r=[]),g(a)&&(a=[]),(w(r)||d(r))&&(r=[r]),(w(a)||d(a))&&(a=[a]),l(f(r),"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),l(f(a),"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),l(v(r).length===1,"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings."),l(v(a).length===1,"The `drop` method only works on 1-dimensional arrays of numerical indices and/or strings.");let i,s;t.index.forEach((u,h)=>{r.indexOf(u)<0&&r.indexOf(h)<0&&(i||(i=[]),i.push(u))}),t.columns.forEach((u,h)=>{a.indexOf(u)<0&&a.indexOf(h)<0&&(s||(s=[]),s.push(u))});let o=t.get(i,s);if(o instanceof n){let u=new e;u=u.assign(o),t.index.indexOf(o.name)>-1&&(u=u.transpose()),o=u}return o}var Dt=Tt;function jt(e){return rn(e)&&e>=0}var X=jt;function Mt(e,n,t,r,a,i){r=r||0,l(r===0||r===1,"The first parameter of the `dropMissing` method (the `axis`) must be 0 or 1."),i=i||0,l(X(i),"The third parameter of the `dropMissing` method (the `threshold`) should be a whole number (meaning that data should be dropped if it contains more than `threshold` null values)."),a=i>0?"none":a||"any",l(a==="any"||a==="all"||a==="none","The second parameter of the `dropMissing` method (the `condition` parameter, which indicates the condition under which data should be dropped) should be 'any' or 'all' (meaning that if 'any' of the data contains null values, then it should be dropped; or that if 'all' of the data contains null values, then it should be dropped).");function s(h){if(i>0){let c=0;for(let m=0;m<h.length;m++){let p=h[m];if(g(p)&&c++,c>=i)return[]}}else if(a==="any")for(let c=0;c<h.length;c++){let m=h[c];if(g(m))return[]}else if(a==="all"){for(let c=0;c<h.length;c++){let m=h[c];if(!g(m))return h}return[]}return h}let o=t.copy(),u=Math.random().toString();if(r===0){o=o.assign(u,o.index);let h=o.values.map(s).filter(m=>m.length>0);if(v(h).length<2)return new e;o.values=h;let c=o.get(null,u);if(g(c))return new e;w(c)&&(c=[c]),c instanceof n&&(c=c.values),o.index=c,o=o.drop(null,u)}else if(r===1){let h={};if(o.columns.forEach((m,p)=>{let x=o.values.map(z=>z[p]),N=s(x);N.length>0&&(h[m]=N)}),Object.keys(h).length+Object.getOwnPropertySymbols(h).length===0)return new e;let c=new e(h);return c.index=o.index,c}return o}var It=Mt;function hn(e){if(b(e)||y(e))return e.dropNaN(...Object.values(arguments).slice(1));l(f(e),"The `dropNaN` function only works on arrays, Series, and DataFrames!");let n=[];return e.forEach(t=>{try{return n.push(hn(t))}catch{if(d(t))return n.push(t)}}),n}var cn=hn;function Et(e,n,t,r,a){t=t||0,l(t===0||t===1,"The first parameter of the `dropNaN` method (the `axis`) must be 0 or 1."),a=a||0,l(X(a),"The third parameter of the `dropNaN` method (the `threshold`) should be a whole number (meaning that data should be dropped if it contains more than `threshold` NaN values)."),r=a>0?"none":r||"any",l(r==="any"||r==="all"||r==="none","The second parameter of the `dropNaN` method (the `condition` parameter, which indicates the condition under which data should be dropped) should be 'any' or 'all' (meaning that if 'any' of the data contains NaN values, then it should be dropped; or that if 'all' of the data contains NaN values, then it should be dropped).");function i(o){let u=cn(o);return a>0?o.length-u.length<a:r==="any"?u.length===o.length:r==="all"?u.length>0:!0}let s=n.copy();if(t===0){let o=s.index.filter(u=>{let h=s.get(u,null).values;return i(h)});return o.length>0?s.get(o,null):new e}else if(t===1){let o=s.columns.filter(u=>{let h=s.get(null,u).values;return i(h)});return o.length>0?s.get(null,o):new e}return s}var Ft=Et;function Ke(e){let n={};return A(e).forEach((t,r)=>{n[t]=r}),n}function L(e){return Object.keys(e).concat(Object.getOwnPropertySymbols(e)).sort((n,t)=>e[n]-e[t])}function kt(e,n,t,r,a){l(D(r),"The `filter` method takes a single parameter: a function that is used to filter the values."),g(a)&&(a=0),l(a===0||a===1,"The `axis` parameter to the `filter` method must be 0 or 1.");let i=t.copy();if(i.isEmpty)return i;let s=Ke(i.index),o=Ke(i.columns);if(a===0){let u=0,h=i.values.filter((c,m)=>{let p=new n(c);p.name=t.index[m],p.index=t.columns;let x=r(p,m,t);return x?u++:delete s[i.index[m]],x});if(u===0)return new e;if(u===1){let c=new n(h[0]);return c.name=L(s)[0],c.index=L(o),c}i.values=h,i.index=L(s)}else if(a===1){i=i.transpose();let u=0,h=i.values.filter((c,m)=>{let p=new n(c);p.name=t.columns[m],p.index=t.index;let x=r(p,m,t);return x?u++:delete o[i.index[m]],x});if(u===0)return new e;if(u===1){let c=new n(h[0]);return c.name=L(o)[0],c.index=L(s),c}i.values=h,i.index=L(o),i=i.transpose()}return i}var Pt=kt;function Bt(e,n,t){(w(n)||d(n))&&(n=[n]),(w(t)||d(t))&&(t=[t]);for(let a in n)typeof n[a]=="bigint"&&(n[a]=Number(n[a]));for(let a in t)typeof t[a]=="bigint"&&(t[a]=Number(t[a]));let r=P((n||[]).concat(t||[]).map(a=>typeof a));return l(r.length<=2,"Only whole numbers and/or strings are allowed in `get` arrays!"),r.length===1&&l(r[0]==="string"||r[0]==="number","Only whole numbers and/or strings are allowed in `get` arrays!"),r.length===2&&(l(r.indexOf("string")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!"),l(r.indexOf("number")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!")),g(n)||(n=n.map(a=>{if(w(a))return l(e.index.indexOf(a)>-1,`Row "${a}" does not exist!`),a;if(d(a))return l(a>=0,`Index ${a} is out of bounds!`),l(Math.floor(a)===a,"Row numbers must be integers!"),l(a<e.index.length,`Index ${a} is out of bounds!`),e.index[a]})),g(t)||(t=t.map(a=>{if(w(a))return l(e.columns.indexOf(a)>-1,`Column "${a}" does not exist!`),a;if(d(a))return l(a>=0,`Column ${a} is out of bounds!`),l(Math.floor(a)===a,"Column numbers must be integers!"),l(a<e.columns.length,`Column ${a} is out of bounds!`),e.columns[a]})),e.getSubsetByNames(n,t)}var At=Bt;function $t(e,n){try{return e<n?-1:e>n?1:0}catch{return e=typeof e=="object"&&e!==null?JSON.stringify(e):e.toString(),n=typeof n=="object"&&n!==null?JSON.stringify(n):n.toString(),e<n?-1:e>n?1:0}}function Jt(e,n){if(g(n)&&(n=$t),b(e)||y(e))return e.sort(...Object.values(arguments).slice(1));l(f(e),"The `sort` function only works on arrays, Series, and DataFrames!"),l(D(n),"The second parameter of the `sort` function must be a comparison function!");let t=e.slice();return t.sort(n),t}var G=Jt;function zt(e){let n=e.toLowerCase(),t="";for(let a=0;a<n.length;a++){let i=n[a];i.match(/[a-z0-9]/g)?t+=i:t+=" "}let r=t.split(" ").filter(a=>a.length>0);return r[0]+r.slice(1).map(a=>a[0].toUpperCase()+a.substring(1)).join("")}function Rt(e,n,t){g(t)?t=n.columns:w(t)&&(t=[t]);let r={};t.forEach(i=>{l(w(i),"You must pass either a string or a one-dimensional array of strings into the `getDummies` (AKA `oneHotEncode`) method!");let s=n.columns.indexOf(i);l(s>-1,`The given DataFrame does not have a column called "${i}"!`);let o=n.values.map(h=>h[s]),u=G(P(o));o.forEach(h=>{u.forEach(c=>{let m=i+"_"+zt(c.toString());r[m]||(r[m]=[]),h===c?r[m].push(1):r[m].push(0)})})});let a=new e(r);return a.index=n.index,a}var Ge=Rt;function Ct(e,n,t){let r=e.shape;g(n)&&(n=T(0,r[0])),g(t)&&(t=T(0,r[1])),d(n)&&(n=[n]),d(t)&&(t=[t]),l(f(n)&&f(t),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),l(v(n).length===1&&v(t).length===1,"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),l(n.length>0,"The `rowIndices` array must contain at least one index."),l(t.length>0,"The `colIndices` array must contain at least one index."),n.forEach(s=>{l(X(s),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),l(s<e.index.length,`The row index ${s} is out of bounds.`)}),t.forEach(s=>{l(X(s),"The `rowIndices` and `colIndices` parameters must be 1-dimensional arrays of whole numbers."),l(s<e.columns.length,`The column index ${s} is out of bounds.`)});let a=n.map(s=>e.index[s]),i=t.map(s=>e.columns[s]);return e.getSubsetByNames(a,i)}var Yt=Ct;function qt(e,n,t,r,a){g(r)&&(r=t.index),g(a)&&(a=t.columns),w(r)&&(r=[r]),w(a)&&(a=[a]),l(f(r)&&f(a),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),l(v(r).length===1&&v(a).length===1,"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),l(r.length>0,"The `rows` array must contain at least one row name."),l(a.length>0,"The `cols` array must contain at least one column name."),r.forEach(o=>{l(w(o),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),l(t.index.indexOf(o)>-1,`The row name "${o}" does not exist in the list of rows.`)}),a.forEach(o=>{l(w(o),"The `rows` and `cols` parameters must be 1-dimensional arrays of strings."),l(t.columns.indexOf(o)>-1,`The column name "${o}" does not exist in the list of columns.`)});let i=r.map(o=>a.map(u=>t.values[t.index.indexOf(o)][t.columns.indexOf(u)]));if(r.length===1&&a.length===1)return i[0][0];if(r.length===1){let o=new n(i[0]);return o.name=r[0],o.index=a,o}if(a.length===1){let o=new n(i.map(u=>u[0]));return o.name=a[0],o.index=r,o}let s=new e(i);return s.columns=a,s.index=r,s}var Ut=qt;function Wt(e,n,t){function r(p,x){return w(p)&&p.length>x?p.substring(0,x-3)+"...":p}if(t.isEmpty)return console.table({}),console.log("Shape:",[0,0],`
15
+ `),t;let a=typeof window>"u"?20:10,i=Math.floor(a/2),s=typeof process>"u"?10:Math.floor(process.stdout.columns/24)-1,o=Math.floor(s/2),u=a>t.index.length?null:T(0,i).concat(T(t.index.length-i,t.index.length)),h=s>t.columns.length?null:T(0,o).concat(T(t.columns.length-o,t.columns.length)),c=t.get(u,h);c instanceof n&&(t.shape[0]===1?(c=new e([c.values]),c.index=t.index,c.columns=new n(t.columns).get(h).values):t.shape[1]===1&&(c=new e([c.values]).transpose(),c.index=new n(t.index).get(u).values,c.columns=t.columns)),a<=t.index.length&&(c._index.splice(i,0,"..."),c._values.splice(i,0,T(0,c.columns.length).map(()=>"..."))),s<=t.columns.length&&(c._columns.splice(o,0,"..."),c._values=c._values.map(p=>(p.splice(o,0,"..."),p)));let m=28;return c instanceof n?(c.values=c.values.map(p=>r(p,m)),c.name=r(c.name,m),c.index=c.index.map(p=>r(p,m))):(c.values=c.values.map(p=>p.map(x=>r(x,m))),c.columns=c.columns.map(p=>r(p,m)),c.index=c.index.map(p=>r(p,m))),console.table(c.toDetailedObject()),console.log("Shape:",t.shape,`
16
+ `),t}var Kt=Wt;function Gt(e,n){l(d(e),"The `leftPad` function only works on numbers!");let t=e.toString();for(;t.length<n;)t="0"+t;return t}var Q=Gt;function Ht(e,n){let t=n?e:e.copy();return t.index=T(0,e.shape[0]).map(r=>"row"+Q(r,(t.index.length-1).toString().length)),t}var Lt=Ht;function Qt(e){if(b(e)||y(e))return e.shuffle(...Object.values(arguments).slice(1));l(f(e),"The `shuffle` function only works on arrays, Series, and DataFrames!");let n=[],t=e.slice();for(let r=0;r<e.length;r++){let a=Math.floor(W()*t.length);n.push(t.splice(a,1)[0])}return n}var me=Qt;function Vt(e,n){return g(n)&&(n=0),l(n===0||n===1,"The `axis` parameter to the `shuffle` must be 0, 1, or undefined."),e.get(n===0?me(e.index):null,n===1?me(e.columns):null)}var Xt=Vt;function Zt(e){return typeof e=="boolean"}var K=Zt;function er(e,n,t){return D(n)?nr(e,n,t):tr(e,n,t)}function nr(e,n,t){if(t=g(t)?0:t,l(D(n),"When sorting a DataFrame using a function, the first argument to the `sort` method must be a function!"),l(d(t),"When sorting a DataFrame using a function, the second argument to the `sort` method must be null, undefined, 0, or 1 to indicate the axis along which the data should be sorted! An axis of 0 means that the rows will be sorted relative to each other, whereas an axis of 1 means that the columns will be sorted relative to each other."),t===0){let r=G(e.index,(a,i)=>n(e.get(a,null),e.get(i,null)));return e.get(r,null)}else{let r=G(e.columns,(a,i)=>n(e.get(null,a),e.get(null,i)));return e.get(null,r)}}function tr(e,n,t){let r=e.copy(),a=W().toString();r=r.assign(a,r.index),g(n)&&(n=[a],t=[!0]),(d(n)||w(n))&&(n=[n],(K(t)||w(t))&&(t=[t])),l(f(n),"The first parameter of the `sort` method must be (1) a string or index representing a column name or index, respectively; (2) a 1-dimensional array of strings and/or indices; or (3) null."),l(v(n).length===1,"The first parameter of the `sort` method must be (1) a string or index representing a column name or index, respectively; (2) a 1-dimensional array of strings and/or indices; or (3) null."),g(t)&&(t=T(0,n.length).map(()=>!0)),l(f(t),"The second parameter of the `sort` method must be (1) a string or boolean representing the sort direction ('ascending' / 'descending', or true / false); (2) a 1-dimensional array of strings and/or booleans; or (3) null."),l(v(t).length===1,"The second parameter of the `sort` method must be (1) a string or boolean representing the sort direction ('ascending' / 'descending', or true / false); (2) a 1-dimensional array of strings and/or booleans; or (3) null."),l(n.length===t.length,"The arrays passed into the `sort` method must be equal in length."),n=n.map(s=>{if(l(w(s)||d(s),"Column references can either be column names (as strings) or column indices (as whole numbers)."),w(s)){let o=r.columns.indexOf(s);return l(o>-1,`The column "${s}" does not exist!`),o}if(d(s))return l(X(s),"Column indices must be whole numbers!"),l(s<r.columns.length,`The index ${s} is out of bounds!`),s}),t=t.map(s=>{if(l(w(s)||K(s),"Direction references can either be strings ('ascending' or 'descending') or booleans (true or false)."),w(s)){let o=s.trim().toLowerCase();return l(o==="ascending"||o==="descending","Direction references can either be strings ('ascending' or 'descending') or booleans (true or false)."),o==="ascending"}if(K(s))return s}),r.values=G(r.values,(s,o)=>{let u=0;for(;s[n[u]]===o[n[u]]&&u<n.length;)u++;let h=t[u];if(s[n[u]]===o[n[u]])return 0;if(s[n[u]]<o[n[u]])return h?-1:1;if(s[n[u]]>o[n[u]])return h?1:-1});let i=r.columns.indexOf(a);return r.index=r.values.map(s=>s[i]),r=r.dropColumns(a),r}var rr=er;function ar(e,n){g(n)?n=0:l(n===0||n===1,"The axis parameter of the `toDetailedObject` method must be undefined, 0, or 1. An axis of 0 indicates that the returned object should be organized first by rows and then by columns. An axis of 1 indicates that the returned object should be organized first by columns and then by rows.");let t={};return n===0?e.index.forEach((r,a)=>{let i={};e.columns.forEach((s,o)=>{i[s]=e.values[a][o]}),t[r]=i}):e.columns.forEach((r,a)=>{let i={};e.index.forEach((s,o)=>{i[s]=e.values[o][a]}),t[r]=i}),t}var ir=ar;function sr(e,n){return JSON.stringify(e.toObject(n))}var fn=sr;async function or(e,n,t){let r=fn(e,t),a=!1,i=!1,s,o;try{let u=n;if(n.includes("/")){let c=n.split("/");u=c[c.length-1]}let h=document.createElement("a");h.href=`data:application/json;charset=utf-8,${encodeURIComponent(r)}`,h.download=u,h.dispatchEvent(new MouseEvent("click")),a=!0}catch(u){s=u}try{let u=await import("node:fs"),h=await import("node:path");u.writeFileSync(h.resolve(n),r,"utf8"),i=!0}catch(u){o=u}if(!a&&!i)throw typeof window<"u"?new U(s):typeof module<"u"?new U(o):new U("I don't know what's going wrong, but it doesn't seem like you're in Node or the browser, and we couldn't download and/or write the file to disk!");return e}var lr=or;function ur(e){let n={};return e.columns.forEach(t=>{n[t]=e.get(t).values}),n}var hr=ur;function cr(e){if(b(e)||y(e))return e.transpose();l(f(e),"The `transpose` function only works on arrays, Series, and DataFrames!");let n=v(e);if(l(n.length<=2,"I'm not smart enough to know how to transpose arrays that have more than 2 dimensions. Sorry for the inconvenience! Please only pass 1- or 2-dimensional arrays into the `transpose` function!"),n.length===1)return q(e);if(n.length===2){let t=B(q(n));for(let r=0;r<n[0];r++)for(let a=0;a<n[1];a++)t[a][r]=e[r][a];return t}}var C=cr;function mn(e,n,t){if(y(t))return new e(n.values.concat(t.values));if(f(t)){let r=v(t);l(r.length===1&&!Be(r),"Only vectors can be appended to Series!");let a=n.copy();return t.forEach((i,s)=>{a._values.push(i),a._index.push("item"+(n.values.length+s))}),a}return mn(n,[t])}var fr=mn;function mr(e,n){l(D(n),"The parameter to the `apply` method must be a function.");let t=e.copy();return t._values=t._values.map((r,a)=>n(r,a)),t}var dr=mr;function gr(e){let n=e.copy(),t=[];return n._values=n.values.filter((r,a)=>g(r)?!1:(t.push(n.index[a]),!0)),n._index=t,n}var pr=gr;function yr(e,n){let t=[],r=[];n.values.forEach((i,s)=>{d(i)&&(r.push(i),t.push(n.index[s]))});let a=new e(r);return a.name=n.name,a.index=t,a}var br=yr;function vr(e,n,t){let r=n.copy(),a=j(r.index),i=[],s=r.values.filter((o,u)=>{let h=t(o,u,r.values);return h||i.push(r.index[u]),h});return i.forEach(o=>{a.splice(a.indexOf(o),1)}),s.length===0?(r=new e,r.name=n.name,r):(r.values=s,r.index=a,r)}var Nr=vr;function xr(e,n){(w(n)||d(n))&&(n=[n]);for(let r in n)typeof n[r]=="bigint"&&(n[r]=Number(n[r]));let t=P((n||[]).map(r=>typeof r));return l(t.length<=2,"Only whole numbers and/or strings are allowed in `get` arrays!"),t.length===1&&l(t[0]==="string"||t[0]==="number","Only whole numbers and/or strings are allowed in `get` arrays!"),t.length===2&&(l(t.indexOf("string")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!"),l(t.indexOf("number")>-1,"Only whole numbers and/or strings are allowed in `get` arrays!")),g(n)||(n=n.map(r=>{if(typeof r=="string")return l(e.index.indexOf(r)>-1,`Index "${r}" does not exist!`),r;if(typeof r=="number")return l(r>=0,`Index ${r} is out of bounds!`),l(Math.floor(r)===r,"Indices must be integers!"),l(r<e.index.length,`Index ${r} is out of bounds!`),e.index[r]})),e.getSubsetByNames(n)}var wr=xr;function Or(e,n){let t=e.shape;g(n)&&(n=T(0,t[0])),l(f(n),"The `indices` array must be 1-dimensional array of whole numbers."),l(v(n).length===1,"The `indices` array must be a 1-dimensional array of whole numbers."),l(n.length>0,"The `indices` array must contain at least one index."),n.forEach(a=>{l(X(a),"The `indices` array must be a 1-dimensional array of whole numbers."),l(a<e.index.length,`The row index ${a} is out of bounds.`)});let r=n.map(a=>e.index[a]);return e.getSubsetByNames(r)}var _r=Or;function Sr(e,n,t){g(t)&&(t=n.index),l(f(t),"The `indices` array must be a 1-dimensional array of strings."),l(v(t).length===1,"The `indices` array must be a 1-dimensional array of strings."),l(t.length>0,"The `indices` array must contain at least one index name."),t.forEach(i=>{l(w(i),"The `indices` array must contain only strings."),l(n.index.indexOf(i)>-1,`The name "${i}" does not exist in the index.`)});let r=t.map(i=>n.values[n.index.indexOf(i)]);if(r.length===1)return r[0];let a=new e(r);return a.index=t,a.name=n.name,a}var Tr=Sr;function Dr(e){let n=e.copy(),t=typeof window>"u"?20:10;if(n.index.length>t){n=n.get(T(0,t/2).concat(T(n.index.length-t/2,n.index.length)));let a=j(n.index);a.splice(Math.floor(a.length/2),0,"..."),n.values.push("..."),n.index.push("..."),n=n.get(a)}let r={};return n.values.forEach((a,i)=>{let s={};s[n.name]=a,r[n.index[i]]=s}),console.table(r),console.log("Shape:",e.shape,`
17
+ `),e}var jr=Dr;function Mr(e){let n=e.copy();return n.get(me(n.index))}var Ir=Mr;function Er(e,n,t){t=t||((u,h)=>u<h?-1:1),l(g(t)||D(t),"You must pass undefined, null, or a comparison function as the second argument to the `sort` method!");let r=C([n.values,n.index]),a=G(r,(u,h)=>t(u[0],h[0])),i=[],s=[];a.forEach(u=>{i.push(u[0]),s.push(u[1])});let o=new e;return o._values=i,o._index=s,o.name=n.name,o}var Fr=Er;function kr(e,n){let t=C([n.values,n.index]);t=C(G(t,(a,i)=>{if(a[1]===i[1])return 0;if(a[1]<i[1])return-1;if(a[1]>i[1])return 1}));let r=new e(t[0]);return r.index=t[1],r.name=n.name,r}var Pr=kr;function Br(e){let n={};return n[e.name]={},e.index.forEach((t,r)=>{n[e.name][t]=e.values[r]}),n}var Ar=Br,He=Symbol.for("@jrc03c/js-math-tools/series");function $r(e){class n{static[Symbol.hasInstance](r){try{return!!r._symbol&&r._symbol===He}catch{return!1}}constructor(r){if(this.name="data",Object.defineProperty(this,"_symbol",{configurable:!1,enumerable:!1,writable:!1,value:He}),Object.defineProperty(this,"_values",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"values",{configurable:!0,enumerable:!0,get(){return this._values},set(a){l(f(a),"The new values must be a 1-dimensional array!");let i=v(a);l(i.length===1,"The new array of values must be 1-dimensional!"),i[0]<this._index.length?this._index=this._index.slice(0,i[0]):i[0]>this._index.length&&(this._index=this._index.concat(T(this._index.length,i[0]).map(s=>"item"+Q(s,(a.length-1).toString().length)))),this._values=a}}),Object.defineProperty(this,"_index",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"index",{configurable:!0,enumerable:!0,get(){return this._index},set(a){l(f(a),"The new index must be a 1-dimensional array of strings!"),l(a.length===this.shape[0],"The new index must be the same length as the old index!"),l(v(a).length===1,"The new index must be a 1-dimensional array of strings!"),a.forEach(i=>{l(w(i),"All of the row names must be strings!")}),this._index=a}}),r){if(r instanceof n)this.name=r.name,this.values=j(r.values),this.index=j(r.index);else if(f(r)){let a=v(r);l(a.length===1,"When passing an array into the constructor of a Series, the array must be 1-dimensional!"),this.values=r}else if(r instanceof Object){let a=Object.keys(r).concat(Object.getOwnPropertySymbols(r)).map(o=>o.toString());l(a.length===1,"When passing an object into the constructor of a Series, the object must have only 1 key-value pair, where the key is the name of the data and the value is the 1-dimensional array of values!");let i=a[0],s=r[i];l(v(s).length===1,"When passing an object into the constructor of a Series, the object must have only 1 key-value pair, where the key is the name of the data and the value is the 1-dimensional array of values!"),this.name=i,this.values=s.slice()}}}get shape(){return v(this.values)}get length(){return this.shape[0]}get isEmpty(){return this.values.filter(r=>!g(r)).length===0}clear(){let r=this.copy();return r.values.forEach((a,i)=>{r.values[i]=void 0}),r}get(r){return wr(this,r)}getSubsetByNames(r){return Tr(n,this,r)}getSubsetByIndices(r){return _r(this,r)}loc(r){return this.getSubsetByNames(r)}iloc(r){return this.getSubsetByIndices(r)}reverse(){let r=new n(q(this.values));return r.index=q(this.index),r.name=this.name,r}resetIndex(){let r=this.copy();return r.index=T(0,this.shape[0]).map(a=>"item"+Q(a,(r.index.length-1).toString().length)),r}copy(){let r=new n;return r._values=j(this.values),r._index=j(this.index),r.name=this.name,r}append(r){return fr(n,this,r)}apply(r){return dr(this,r)}concat(r){return this.append(r)}dropMissing(r,a){return pr(this,r,a)}dropNaN(){return br(n,this)}toObject(){return Ar(this)}print(){return jr(this)}shuffle(){return Ir(this)}sort(r){return Fr(n,this,r)}sortByIndex(){return Pr(n,this)}filter(r){return Nr(n,this,r)}toDataFrame(){let r=new e(C([this.values]));return r.columns=[this.name],r.index=this.index,r}transpose(){let r=this.copy();return r.values=q(r.values),r.index=q(r.index),r}getDummies(){return this.toDataFrame().getDummies()}oneHotEncode(){return this.getDummies()}}return n}var Le=Symbol.for("@jrc03c/js-math-tools/dataframe");function ie(e){let n="abcdefghijklmnopqrstuvwxyz1234567890",t="";for(let r=0;r<e;r++)t+=n[Math.floor(W()*n.length)];return t}var S=class{static[Symbol.hasInstance](e){try{return!!e._symbol&&e._symbol===Le}catch{return!1}}constructor(e){if(Object.defineProperty(this,"_symbol",{configurable:!1,enumerable:!1,writable:!1,value:Le}),Object.defineProperty(this,"_values",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"values",{configurable:!0,enumerable:!0,get(){return this._values.length===0||!g(this._values[0])&&this._values[0].length===0?[[]]:this._values},set(n){l(f(n),"The new values must be a 2-dimensional array!");let t=v(n);l(t.length===2,"The new array of values must be 2-dimensional!"),t[0]<this._index.length?this._index=this._index.slice(0,t[0]):t[0]>this._index.length&&(this._index=this._index.concat(T(this._index.length,t[0]).map(r=>"row"+Q(r,(t[0]-1).toString().length)))),t[1]<this._columns.length?this._columns=this._columns.slice(0,t[1]):t[1]>this._columns.length&&(this._columns=this._columns.concat(T(this._columns.length,t[1]).map(r=>"col"+Q(r,(t[1]-1).toString().length)))),this._values=n}}),Object.defineProperty(this,"_columns",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"columns",{configurable:!0,enumerable:!0,get(){return this._columns},set(n){l(f(n),"The new columns list must be a 1-dimensional array of strings!"),l(this.isEmpty||n.length===this.shape[1],"The new columns list must be the same length as the old columns list!"),l(v(n).length===1,"The new columns list must be a 1-dimensional array of strings!"),n=n.map(r=>(typeof r!="string"&&(r=JSON.stringify(r)||r.toString()),r.trim().length===0?"untitled_"+ie(8):r.trim()));let t=(()=>{let r=fe(n),a={};return r.values.forEach(i=>{a[i]=r.get(i)}),a})();n=n.map(r=>t[r]>1?r+"_"+ie(8):r),this._columns=n}}),Object.defineProperty(this,"_index",{value:[],configurable:!0,enumerable:!1,writable:!0}),Object.defineProperty(this,"index",{configurable:!0,enumerable:!0,get(){return this._index},set(n){l(f(n),"The new index must be a 1-dimensional array of strings!"),l(this.isEmpty||n.length===this.shape[0],"The new index must be the same length as the old index!"),l(v(n).length===1,"The new index must be a 1-dimensional array of strings!"),n=n.map(r=>(typeof r!="string"&&(r=JSON.stringify(r)||r.toString()),r.trim().length===0?"untitled_"+ie(8):r.trim()));let t=(()=>{let r=fe(n),a={};return r.values.forEach(i=>{a[i]=r.get(i)}),a})();n=n.map(r=>t[r]>1?r+"_"+ie(8):r),this._index=n}}),l(g(e)||$(e)||f(e),"The `data` passed into the constructor of a DataFrame must be either (1) an object where the key-value pairs are (respectively) column names and 1-dimensional arrays of values, or (2) a 2-dimensional array of values."),e)if(e instanceof S)this.values=j(e.values),this.columns=j(e.columns),this.index=j(e.index);else if(f(e)){let n=v(e);l(n.length===2,"The `data` array passed into the constructor of a DataFrame must be 2-dimensional!"),l(!re(e),"The 2-dimensional array passed into the constructor of a DataFrame must not contain sub-arrays (i.e., rows) of different lengths!"),this.values=e}else{this._columns=Object.keys(e).concat(Object.getOwnPropertySymbols(e)).map(i=>i.toString());let n=[],t=null,r=null;this._columns.forEach(i=>{g(r)&&(t=i,r=e[i].length),l(e[i].length===r,`The object passed into the DataFrame constructor contains arrays of different lengths! The key "${t}" points to an array containing ${r} items, and the key "${i}" points to an array containing ${e[i].length} items.`),r=e[i].length;let s=e[i];n.push(s)}),this._values=C(n);let a=v(this.values);this._index=T(0,a[0]).map(i=>"row"+Q(i,(a[0]-1).toString().length))}}get shape(){return v(this.values)}get length(){return this.shape[0]}get width(){return this.shape[1]}get rows(){return this.index}set rows(e){this.index=e}get isEmpty(){return this.values.length===0||this.values.every(e=>e.length===0)}clear(){let e=new S(B(this.shape));return e.columns=this.columns.slice(),e.index=this.index.slice(),e}get(e,n){if(arguments.length===0)return this;if(arguments.length===1)try{return this.get(null,e)}catch{return this.get(e,null)}return At(this,e,n)}getSubsetByNames(e,n){return Ut(S,I,this,e,n)}getSubsetByIndices(e,n){return Yt(this,e,n)}getDummies(e){return Ge(S,this,e)}oneHotEncode(e){return Ge(S,this,e)}transpose(){let e=new S(C(this.values));return e.columns=this.index.slice(),e.index=this.columns.slice(),e}get T(){return this.transpose()}resetIndex(e){return Lt(this,e)}copy(){return St(S,this)}assign(e,n){return Ot(S,I,this,e,n)}apply(e,n){return Nt(S,I,this,e,n)}dropMissing(e,n,t){return It(S,I,this,e,n,t)}dropNaN(e,n,t){return Ft(S,this,e,n,t)}drop(e,n){return Dt(S,I,this,e,n)}dropColumns(e){return this.drop(null,e)}dropRows(e){return this.drop(e,null)}toDetailedObject(e){return ir(this,e)}toObject(){return hr(this)}toJSONString(e){return fn(this,e)}saveAsJSON(e,n){return lr(this,e,n)}print(){return Kt(S,I,this)}sort(e,n){return rr(this,e,n)}sortByIndex(){return this.sort()}filter(e,n){return Pt(S,I,this,e,n)}shuffle(e){return Xt(this,e)}append(e,n){return bt(this,e,n)}concat(e,n){return this.append(e,n)}join(e,n){return this.append(e,n)}toString(){return JSON.stringify(this)}},I=$r(S);function Jr(e,n){return F(e,{shouldDropNaNs:n}).max}var ve=Jr;function zr(e){return l(D(e),"You must pass a function into the `vectorize` function!"),function n(){let t,r,a=[],i=[],s=Object.keys(arguments).filter(o=>{let u=arguments[o];return f(u)?!0:y(u)?(t=!0,a.push(u),!0):b(u)?(r=!0,i.push(u),!0):!1}).map(o=>arguments[o]);if(s.slice(0,-1).forEach((o,u)=>{l(J(f(o)?v(o):o.shape,f(s[u+1])?v(s[u+1]):s[u+1].shape),`When passing multiple arrays into the \`${e.name}\` function, all of the arrays must have the same shape!`)}),s.length>0){let o=ve(s.map(h=>h.length?h.length:h.values.length)),u=T(0,o).map(h=>{let c=Object.keys(arguments).map(m=>f(arguments[m])?arguments[m][h]:y(arguments[m])||b(arguments[m])?arguments[m].values[h]:arguments[m]);return n(...c)});if(r)try{if(i.length===1&&J(v(i[0]),v(u))){let h=new S(u);return h.index=i[0].index.slice(),h.columns=i[0].columns.slice(),h}else return new S(u)}catch{return u}if(t)try{if(a.length===1&&a[0].length===u.length){let h=new I(u);return h.name=a[0].name,h.index=a[0].index.slice(),h}else return new I(u)}catch{return u}return u}else return e(...arguments)}}var O=zr;function Se(e){if(b(e)||y(e)){let n=e.copy();return n.values=Se(n.values),n}if(f(e))return e.map(n=>Se(n));try{let n=JSON.parse(e);return d(n)?typeof n=="bigint"?Number(n):n>=0?Math.floor(n):Math.ceil(n):NaN}catch{return NaN}}var E=O(Se);function de(e,n){function*t(r,a){if(a>r.length)yield r;else if(a<=0)yield[];else if(r.length<2)yield r;else for(let i=0;i<r.length;i++){let s=r[i],o=r.slice(i+1);if(!(o.length<a-1)&&a-1>=0)for(let u of de(o,a-1))yield[s].concat(u)}}return b(e)||y(e)?de(e.values,n):(l(f(e),"The `combinations` function only works on arrays, Series, and DataFrames!"),l(d(n)&&E(n)===n&&n>=0,"`r` must be a non-negative integer!"),t(A(e),n))}function dn(e,n){let t=[];for(let r of de(e,n))t.push(r.slice());return t}function Rr(e){d(e)&&(e=[e]);let n=[],t=ye(e);for(let r=0;r<t;r++)n.push(0);return Ae(n,e)}var $e=Rr;function Je(e,n){function*t(r,a){if(a=a||r.length,r.length===1){yield[r];return}for(let i of dn(r,a)){if(!i.slice)continue;let s=$e(i.length);yield i;let o=1;for(;o<i.length;)if(s[o]<o){if(o%2===0){let u=i[0];i[0]=i[o],i[o]=u}else{let u=i[s[o]];i[s[o]]=i[o],i[o]=u}yield i,s[o]+=1,o=1}else s[o]=0,o+=1}}return b(e)||y(e)?Je(e.values,n):(l(f(e),"The `permutations` function only works on arrays, Series, and DataFrames!"),g(n)&&(n=e.length),l(d(n)&&E(n)===n&&n>=0,"`r` must be a non-negative integer!"),t(A(e),n))}function Cr(e,n){let t=[];for(let r of Je(e,n))t.push(r.slice());return t}function Qe(e,n){l(D(e),"`fn` must be a function!");let t=new Date;return n?e(...n):e(),new Date-t}async function Yr(e,n){l(D(e),"`fn` must be a function!");let t=new Date;return n?await e(...n):await e(),new Date-t}function qr(e){try{return d(e)?typeof e=="bigint"?e<0?-e:e:Math.abs(e):NaN}catch{return NaN}}var ze=O(qr);function Ur(){try{let e=0,n=!1,t=Object.values(arguments);for(let r of t){if(!d(r))return NaN;typeof r=="bigint"&&(n=!0,r=Number(r)),e+=r}if(n)try{return BigInt(e)}catch{}return e}catch{return NaN}}var ge=O(Ur);function Wr(e,n){try{return n(e)}catch{return NaN}}var Ne=O(Wr);function Kr(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.acos(e)):NaN}catch{return NaN}}var Gr=O(Kr);function Hr(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.asin(e)):NaN}catch{return NaN}}var Lr=O(Hr);function Qr(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.atan(e)):NaN}catch{return NaN}}var Vr=O(Qr);function Te(e,n){if(b(e)){let t=Te(e.values,n);return[e.index[t[0]],e.columns[t[1]]]}if(y(e)){let t=Te(e.values,n);return e.index[t]}l(f(e),"The `argmax` function only works on arrays, Series, and DataFrames!");try{let t=pe(e,ve(e,n));return t?t.length===0?void 0:t.length===1?t[0]:t:void 0}catch{return}}var Xr=Te;function Zr(e,n){return F(e,{shouldDropNaNs:n}).min}var gn=Zr;function De(e,n){if(b(e)){let t=De(e.values,n);return[e.index[t[0]],e.columns[t[1]]]}if(y(e)){let t=De(e.values,n);return e.index[t]}l(f(e),"The `argmin` function only works on arrays, Series, and DataFrames!");try{let t=pe(e,gn(e,n));return t?t.length===0?void 0:t.length===1?t[0]:t:void 0}catch{return}}var ea=De;function k(e,n){if(b(e)||y(e))return e.apply(t=>k(t,n));if(f(e))return e.map(t=>k(t,n));if(n==="null")return null;if(n==="number"){if(g(e))return NaN;let t=k(e,"boolean");if(K(t))return t?1:0;try{JSON.parse(e)}catch{let a=k(e,"date");if(R(a))return a.getTime()}let r=parseFloat(e);return isNaN(r)?NaN:r}if(n==="int"){let t=k(e,"number");return t>=0?Math.floor(t):Math.ceil(t)}if(n==="float")return k(e,"number");if(n==="bigint")return typeof e=="bigint"?e:BigInt(k(e,"int"));if(n==="boolean"){if(K(e))return e;if(d(e))return e===0?!1:e===1?!0:null;try{let t=(typeof e=="object"?e.toString()==="null"?"false":JSON.stringify(e):e.toString()).trim().toLowerCase();return t==="true"||t==="yes"||t==="y"?!0:t==="false"||t==="no"||t==="n"?!1:null}catch{return null}}if(n==="date"){if(R(e))return e;if(g(e))return null;let t=parseFloat(e);if(!isNaN(t)){let a=new Date(e);return R(a)?a:null}let r=Date.parse(e);return isNaN(r)?null:new Date(r)}if(n==="object"){if($(e))return e;let t=k(e,"boolean");if(K(t))return null;try{let a=k(e,"number");if(d(a))return JSON.parse(e),null}catch{}let r=k(e,"date");if(r)return r;try{let a=JSON.parse(e);return f(a)?a.map(i=>k(i,n)):a}catch{return null}}if(n==="string")return g(e)?J(e,void 0)?"undefined":"null":e instanceof Date?e.toJSON():(()=>typeof e=="object"?e===null?"null":JSON.stringify(e):e.toString())()}var pn=k;function na(e){try{return d(e)?typeof e=="bigint"?e:Math.ceil(e):NaN}catch{return NaN}}var ta=O(na);function ra(e,n){try{if(!d(e))return NaN;if(typeof e=="bigint")return e;if(g(n))n=1e-10;else if(!d(n))return NaN;return ze(e)<n?0:e}catch{return NaN}}var aa=O(ra);function yn(e,n,t){try{return d(e)?d(n)?d(t)?typeof e=="bigint"?BigInt(yn(E(e),n,t)):e<n?n:e>t?t:e:NaN:NaN:NaN}catch{return NaN}}var ia=O(yn);function sa(){let e=Object.values(arguments).map(n=>b(n)||y(n)?P(n.values):(l(f(n),"The `intersect` function only works on arrays, Series, and DataFrames!"),P(n)));return P(e).filter(n=>e.every(t=>t.findIndex(r=>J(r,n))>-1))}var bn=sa,ee=class{constructor(e){l(g(e)||e===ee.DROP_NAN_MODE||e===ee.DROP_MISSING_MODE,"The `mode` value passed into the `IndexMatcher` constructor must be undefined or one of [IndexMatcher.DROP_NAN_MODE, IndexMatcher.DROP_MISSING_MODE]! (By default, the mode is `Indexer.DROP_MISSING_MODE`.)"),this.mode=g(e)?ee.DROP_NAN_MODE:e,this.index=null}fit(){let e=[];return Object.values(arguments).forEach(n=>{if(f(n)){let t=v(n);if(t.length===1)n=new I(n);else if(t.length===2)n=new S(n);else throw new Error("The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!")}l(b(n)||y(n),"The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!"),this.mode===ee.DROP_MISSING_MODE?e.push(n.dropMissing().index):e.push(n.dropNaN().index)}),this.index=bn(...e),this}transform(){l(!!this.index,"The IndexMatcher hasn't been fitted yet! Please call the `fit` method before calling the `transform` method.");let e=Object.values(arguments).map(n=>{if(f(n)){let t=v(n);if(t.length===1)return new I(n).get(this.index).values;if(t.length===2)return new S(n).get(this.index,null).values;throw new Error("The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!")}return l(b(n)||y(n),"The `IndexMatcher.fit` method only works on arrays, Series, and DataFrames!"),n.get(this.index,null)});return e.length===1?e[0]:e}fitAndTransform(){return this.fit(...arguments).transform(...arguments)}},je=ee;Ye(je,"DROP_NAN_MODE","DROP_NAN_MODE"),Ye(je,"DROP_MISSING_MODE","DROP_MISSING_MODE");var vn=je;function oe(e,n,t,r){if(y(e))return oe(e.values,n,t,r);if(y(n))return oe(e,n.values,t,r);if(l(f(e)&&f(n)&&v(e).length===1&&v(n).length===1,"The `covariance` function only works on 1-dimensional arrays and Series!"),l(e.length===n.length,"The two arrays or Series passed into the `covariance` function must have the same length!"),t)return oe(...new vn().fitAndTransform(e,n),!1,r);try{let a=F(e,{stdev:r}),i=F(n,{stdev:r}),s=Number(a.mean),o=Number(i.mean);if(!d(s)||!d(o))return NaN;let u=Math.max(e.length,n.length),h=0;for(let c=0;c<u;c++){let m=e[c],p=n[c];if(!d(m))return NaN;if(!d(p))return NaN;typeof m=="bigint"&&(m=Number(m)),typeof p=="bigint"&&(p=Number(p)),h+=(m-s)*(p-o)}return r?[h/e.length,a,i]:h/e.length}catch{return NaN}}var Nn=oe;function Me(e,n,t){if(y(e))return Me(e.values,n,t);if(y(n))return Me(e,n.values,t);l(f(e)&&f(n)&&v(e).length===1&&v(n).length===1,"The `correl` function only works on 1-dimensional arrays and Series!"),l(e.length===n.length,"The two arrays or Series passed into the `correl` function must have the same length!");try{let[r,a,i]=Nn(e,n,t,!0),s=a.stdev*i.stdev;return r/s}catch{return NaN}}var oa=Me;function la(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.cos(e)):NaN}catch{return NaN}}var ua=O(la),ha=Object.freeze({boolean:"boolean",date:"date",null:"null",number:"number",object:"object",string:"string"});function Ie(e,n){if(b(e)||y(e))return Ie(e.values,n);if(b(n)||y(n))return Ie(e,n.values);l(f(e)&&f(n),"The `diff` function only works on arrays, Series, and DataFrames!");let t=P(e),r=P(n),a=[];return t.forEach(i=>{r.findIndex(s=>J(s,i))<0&&a.push(i)}),a}var ca=Ie;function xn(e,n){try{if(!d(e))return NaN;if(!d(n))return NaN;if(typeof e=="bigint"||typeof n=="bigint"){let t=xn(Number(e),Number(n));try{return BigInt(t)}catch{return t}}return Math.pow(e,n)}catch{return NaN}}var Re=O(xn);function wn(e){try{if(!d(e))return NaN;if(typeof e=="bigint"){let n=wn(Number(e));try{return BigInt(n)}catch{return n}}return Math.sqrt(e)}catch{return NaN}}var On=O(wn);function fa(){try{let e=Object.values(arguments);if(e.length===0)return NaN;let n=!1,t=1;for(let r of e){if(!d(r))return NaN;typeof r=="bigint"&&(n=!0,r=Number(r)),t*=r}if(n)try{return BigInt(t)}catch{}return t}catch{return NaN}}var _n=O(fa);function ma(){return _n(...arguments)}var Z=ma;function da(e,n){return ge(e,Z(n,-1))}var Sn=da;function ga(e,n){return F(e,{shouldDropNaNs:n}).sum}var Ce=ga;function Ee(e,n){if(d(e)&&d(n))return ze(e-n);if(b(e)||y(e))return Ee(e.values,n);if(b(n)||y(n))return Ee(e,n.values);f(e)&&f(n)&&l(J(v(e),v(n)),"If passing two arrays, Series, or DataFrames into the `distance` function, then those objects must have the same shape!");try{return On(Ce(Re(Sn(e,n),2)))}catch{return NaN}}var pa=Ee;function ya(e,n){return Z(e,Re(n,-1))}var ba=ya;function Y(e,n){if(b(e)){let a=Y(e.values,n);if(v(a).length===1){let i=new I(a);return i.name=y(n)?n.name:i.name,i.index=e.index.slice(),i}else{let i=new S(a);return i.index=e.index.slice(),b(n)&&(i.columns=n.columns.slice()),i}}if(b(n)){let a=Y(e,n.values);if(v(a).length===1){let i=new I(a);return i.name=y(e)?e.name:i.name,i.index=n.columns.slice(),i}else{let i=new S(a);return i.columns=n.columns.slice(),i}}if(y(e))return Y(e.values,n);if(y(n))return Y(e,n.values);l(f(e)&&f(n),"The `dot` function only works on arrays, Series, and DataFrames!");let t=v(e),r=v(n);if(l(t.length<=2&&r.length<=2,"I'm not smart enough to know how to get the dot-product of arrays that have more than 2 dimensions. Sorry for the inconvenience! Please only pass 1- or 2-dimensional arrays into the `dot` function!"),l(t[t.length-1]===r[0],`There's a dimension misalignment in the two arrays you passed into the \`dot\` function. (${t[t.length-1]} !== ${r[0]})`),t.length===1&&r.length===1)return Ce(Z(e,n));if(t.length===1&&r.length===2)return C(n).map(a=>Y(e,a));if(t.length===2&&r.length===1)return e.map(a=>Y(a,n));if(t.length===2&&r.length===2){let a=C(n),i=[];for(let s=0;s<e.length;s++){let o=[];for(let u=0;u<a.length;u++)o.push(Y(e[s],a[u]));i.push(o)}return i}}var Tn=Y;function Dn(e){if(b(e)||y(e))return e.dropMissing(...Object.values(arguments).slice(1));l(f(e),"The `dropMissing` function only works on arrays, Series, and DataFrames!");let n=[];return e.forEach(t=>{try{return n.push(Dn(t))}catch{g(t)||n.push(t)}}),n}var jn=Dn;function le(e,n){if(b(e)||y(e))return le(e.values,n);if(b(n)||y(n))return le(e,n.values);l(f(e)&&f(n),"The `dropMissingPairwise` function only works on arrays, Series, and DataFrames!"),l(J(v(e),v(n)),"The two arrays, Series, and/or DataFrames passed into the `dropMissingPairwise` function must have the same shape!");let t=[],r=[];for(let a=0;a<e.length;a++)try{let[i,s]=le(e[a],n[a]);t.push(i),r.push(s)}catch{!g(e[a])&&!g(n[a])&&(t.push(e[a]),r.push(n[a]))}return[t,r]}var va=le;function ue(e,n){if(b(e)||y(e))return ue(e.values,n);if(b(n)||y(n))return ue(e,n.values);l(f(e)&&f(n),"The `dropNaNPairwise` only works on arrays, Series, and DataFrames!"),l(J(v(e),v(n)),"The two arrays, Series, and/or DataFrames passed into the `dropNaNPairwise` must have the same shape!");let t=[],r=[];for(let a=0;a<e.length;a++)try{let[i,s]=ue(e[a],n[a]);t.push(i),r.push(s)}catch{d(e[a])&&d(n[a])&&(t.push(e[a]),r.push(n[a]))}return[t,r]}var Na=ue;function xa(e){return jn(e)}var wa=xa;function Fe(e,n){if(b(e)||y(e))return Fe(e.values,n);l(f(e),"The first argument passed into the `every` function must be an array, Series, or DataFrame!"),l(D(n),"The second argument passed into the `every` function must be a function!");for(let t of e)if(f(t)){if(!Fe(t,n))return!1}else if(!n(t))return!1;return!0}var Mn=Fe;function Oa(e){try{if(!d(e))return NaN;if(typeof e=="bigint"){if(e===0n)return 1n;e=Number(e)}return Math.exp(e)}catch{return NaN}}var _a=O(Oa);function ke(e){try{return typeof e=="bigint"?BigInt(ke(E(e))):e!==E(e)?NaN:e<=1?1:e*ke(e-1)}catch{return NaN}}var Sa=O(ke);function In(e,n){if(b(e)||y(e))return In(e.values,n);if(l($(e)||f(e),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `find` function!"),!D(n)){let a=n;n=i=>i===a}function t(a,i,s){if(s=s||[],s.indexOf(a)>-1)return null;if($(a)){s.push(a);let o=Object.keys(a).concat(Object.getOwnPropertySymbols(a));for(let u=0;u<o.length;u++){let h=o[u],c=a[h];if(i(c))return c;let m=t(c,i,s);if(m)return m}}else if(f(a)){s.push(a);for(let o=0;o<a.length;o++){let u=a[o];if(i(u))return u;let h=t(u,i,s);if(h)return h}}else if(i(a))return a;return null}function r(a){try{return n(a)}catch{return!1}}return t(e,r)}var Ta=In;function En(e,n){if(b(e)||y(e))return En(e.values,n);if(l($(e)||f(e),"You must pass (1) an object, array, Series, or DataFrame and (2) a function or value into the `findAll` function!"),!D(n)){let i=n;n=s=>s===i}function t(i,s,o){if(o=o||[],o.indexOf(i)>-1)return null;if($(i)){o.push(i);let u=Object.keys(i).concat(Object.getOwnPropertySymbols(i)),h=[];for(let c=0;c<u.length;c++){let m=u[c],p=i[m],x=!1;s(p)&&(h.push(p),x=!0);let N=t(p,s,o);N&&N.length>0&&N.slice(x?1:0).forEach(z=>h.push(z))}return h}else if(f(i)){o.push(i);let u=[];for(let h=0;h<i.length;h++){let c=i[h],m=!1;s(c)&&(u.push(c),m=!0);let p=t(c,s,o);p&&p.length>0&&p.slice(m?1:0).forEach(x=>u.push(x))}return u}else if(s(i))return[i];return null}function r(i){try{return n(i)}catch{return!1}}let a=t(e,r);return a&&a.length>0?a:null}var Da=En;function ja(e){try{if(e==="Infinity")return 1/0;if(e==="-Infinity")return-1/0;let n=JSON.parse(e);return d(n)?n:NaN}catch{return NaN}}var Ma=O(ja);function Ia(e){try{return d(e)?typeof e=="bigint"?e:Math.floor(e):NaN}catch{return NaN}}var Ea=O(Ia);function Fa(e){typeof e=="bigint"&&(e=E(e)),l(!g(e),"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),l(d(e),"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),l(E(e)===e,"You must pass an integer greater than 0 (representing the size) into the `identity` function!"),l(e>0,"You must pass an integer greater than 0 (representing the size) into the `identity` function!");let n=$e([e,e]);for(let t=0;t<e;t++)n[t][t]=1;return n}var ka=Fa,Pa=["true","false","yes","no"],Ba=["null","none","nan","na","n/a","","undefined"];function se(e){return e.type==="number"&&(typeof e.value<"u"?e.isInteger=E(e.value)===e.value:e.isInteger=Mn(e.values,n=>d(n)?E(n)===n:!0)),e}function he(e){if(b(e)){let a=e.copy(),i=he(e.values);return a.values=i.values,se({type:i.type,values:a})}if(y(e)){let a=e.copy(),i=he(e.values);return a.values=i.values,se({type:i.type,values:a})}if(!f(e)){let a=he([e]);return a.value=a.values[0],delete a.values,se(a)}l(f(e),"The `inferType` function only works on arrays, Series, and DataFrames!");let n=A(e).map(a=>{if(a===void 0)return"null";try{if(typeof a=="object"){let s=new Date(a.getTime());if(R(s))return"date"}}catch{}w(a)||(typeof a=="bigint"?a=a.toString()+"n":a=JSON.stringify(a));let i=a.toLowerCase().trim();if(Ba.indexOf(i)>-1)return"null";if(Pa.indexOf(i)>-1)return"boolean";try{if(a.match(/^-?\d+n$/g))return"bigint";let s=JSON.parse(a);return d(s)?"number":typeof s=="object"?f(s)?"string":"object":"string"}catch{let s=new Date(a);return R(s)?"date":"string"}}),t=fe(n),r=t.values.toSorted((a,i)=>t.get(i)-t.get(a))[0];return se({type:r,values:Ne(e,a=>pn(a,r))})}var Aa=he;function ce(e){if(b(e)){let t=e.copy();return t.values=ce(t.values),t}l(f(e),"The `inverse` function only works on square 2-dimensional arrays or DataFrames!");let n=v(e);if(l(n.length===2,"The array passed into the `inverse` function must be exactly two-dimensional and square!"),l(n[0]===n[1],"The array passed into the `inverse` function must be exactly two-dimensional and square!"),l(n[0]>=0,"The array passed into the `inverse` function must be exactly two-dimensional and square!"),n[0]===0)return e;if(n[0]===1){l(e[0][0]!==0,"This matrix cannot be inverted!");let t=e[0][0];return typeof t=="bigint"&&(t=Number(t)),1/t}else if(n[0]===2){let t=e[0][0],r=e[0][1],a=e[1][0],i=e[1][1];typeof t=="bigint"&&(t=Number(t)),typeof r=="bigint"&&(r=Number(r)),typeof a=="bigint"&&(a=Number(a)),typeof i=="bigint"&&(i=Number(i));let s=t*i-r*a;l(s!==0,"This matrix cannot be inverted!");let o=[[i,-r],[-a,t]];return Z(o,1/s)}else if(n[0]>1){let t=(r,a)=>d(r)||d(a)?Z(r,a):Tn(r,a);for(let r=1;r<n[0]-1;r++)try{let a=e.slice(0,r).map(N=>N.slice(0,r)),i=e.slice(0,r).map(N=>N.slice(r,n[0])),s=e.slice(r,n[0]).map(N=>N.slice(0,r)),o=e.slice(r,n[0]).map(N=>N.slice(r,n[0])),u=ce(a),h=ce(ge(o,t(-1,t(t(s,u),i)))),c=ge(u,t(t(t(t(u,i),h),s),u)),m=t(-1,t(t(u,i),h)),p=t(-1,t(t(h,s),u)),x=h;return c.map((N,z)=>N.concat(m[z])).concat(p.map((N,z)=>N.concat(x[z])))}catch{}l(!1,"This matrix cannot be inverted!")}}var $a=ce,Ja=new Function(`
18
18
  try {
19
19
  return this === window
20
20
  } catch(e) {}
@@ -24,4 +24,4 @@
24
24
  } catch(e){}
25
25
 
26
26
  return false
27
- `);Ba.exports=My});var Ca=c((x0,za)=>{var dr=g(),By=v();function Pa(t,e,r){try{if(!dr(t))return NaN;if(!dr(e))return NaN;if(!dr(r))return NaN;if(typeof t=="bigint"||typeof e=="bigint"){let n=Pa(Number(t),Number(e),r);try{return BigInt(n)}catch{return n}}return r*(e-t)+t}catch{return NaN}}za.exports=By(Pa)});var Ya=c((A0,Ra)=>{var ka=g(),Uy=q(),Py=v();function Ja(t,e){try{if(e=Uy(e)?Math.E:e,!ka(t))return NaN;if(!ka(e))return NaN;if(typeof t=="bigint"||typeof e=="bigint"){let r=Ja(Number(t),Number(e));try{return BigInt(r)}catch{return r}}return Math.log(t)/Math.log(e)}catch{return NaN}}Ra.exports=Py(Ja)});var $a=c((E0,Ka)=>{var zy=A();function Cy(t,e){return zy(t,{shouldDropNaNs:e}).mean}Ka.exports=Cy});var Ga=c((F0,La)=>{var ky=A();function Jy(t,e){return ky(t,{shouldDropNaNs:e,median:!0}).median}La.exports=Jy});var Xa=c((j0,Ha)=>{var Va=g(),Ry=v();function Wa(t,e){try{if(!Va(t))return NaN;if(!Va(e))return NaN;if(typeof t=="bigint"||typeof e=="bigint"){let r=Wa(Number(t),Number(e));try{return BigInt(r)}catch{return r}}return t%e}catch{return NaN}}Ha.exports=Ry(Wa)});var Za=c((M0,Qa)=>{var Yy=A();function Ky(t,e){return Yy(t,{shouldDropNaNs:e,mode:!0}).mode}Qa.exports=Ky});var nc=c((B0,rc)=>{var{random:ec}=H(),$y=Te(),Ly=q(),Gy=R();function tc(){let t=ec(),e=ec();return Math.sqrt(-2*Math.log(t))*Math.cos(2*Math.PI*e)}function Vy(t){return Ly(t)?tc():$y(Gy(t),tc)}rc.exports=Vy});var ic=c((U0,sc)=>{var Wy=Te(),Hy=R();function Xy(t){return Wy(Hy(t),()=>1)}sc.exports=Xy});var gr=c((P0,uc)=>{var{combinations:Qy}=Ve(),oc=d(),Zy=P(),eq=G(),tq=p(),rq=b(),nq=g(),sq=y(),iq=q(),oq=st();function pr(t,e){function*r(n,s){if(s=s||n.length,n.length===1){yield[n];return}for(let i of Qy(n,s)){if(!i.slice)continue;let o=oq(i.length);yield i;let u=1;for(;u<i.length;)if(o[u]<u){if(u%2===0){let a=i[0];i[0]=i[u],i[u]=a}else{let a=i[o[u]];i[o[u]]=i[u],i[u]=a}yield i,o[u]+=1,u=1}else o[u]=0,u+=1}}return rq(t)||sq(t)?pr(t.values,e):(oc(tq(t),"The `permutations` function only works on arrays, Series, and DataFrames!"),iq(e)&&(e=t.length),oc(nq(e)&&eq(e)===e&&e>=0,"`r` must be a non-negative integer!"),r(Zy(t),e))}function uq(t,e){let r=[];for(let n of pr(t,e))r.push(n.slice());return r}uc.exports={permutations:uq,permutationsIterator:pr}});var cc=c((z0,ac)=>{var{DataFrame:aq,Series:cq}=ue(),lq=p(),fq=b(),hq=te(),mq=y(),dq=w();function pq(){Object.keys(arguments).forEach(t=>{let e=arguments[t];if(lq(e))if(hq(e))console.log(e);else{let r=dq(e);r.length===1?new cq(e).print():r.length==2?new aq(e).print():console.log(e)}else fq(e)||mq(e)?e.print():console.log(e)})}ac.exports=pq});var hc=c((C0,fc)=>{var gq=p(),yq=g(),lc=q(),qq=A(),bq=v(),Nq=bq((t,e,r,n,s)=>{try{let i=!1;for(let l of[t,e,r,n,s]){if(!yq(l))return NaN;typeof l=="bigint"&&(i=!0)}i&&(t=Number(t),e=Number(e),r=Number(r),n=Number(n),s=Number(s));let o=(s-n)*(t-e),u=r-e;if(u===0)return NaN;let a=o/u+n;if(i)try{return BigInt(a)}catch{}return a}catch{return NaN}});function vq(t,e,r,n,s){if(gq(t)&&lc(n)&&lc(s)){n=e,s=r;let i=qq(t);e=i.min,r=i.max}return Nq(t,e,r,n,s)}fc.exports=vq});var dc=c((k0,mc)=>{var wq=g(),Sq=v();function Oq(t){try{return wq(t)?typeof t=="bigint"?t:Math.round(t):NaN}catch{return NaN}}mc.exports=Sq(Oq)});var yc=c((J0,gc)=>{var Tq=g(),_q=v();function pc(t){try{return Tq(t)?typeof t=="bigint"?BigInt(pc(Number(t))):t<0?-1:t>0?1:0:NaN}catch{return NaN}}gc.exports=_q(pc)});var bc=c((R0,qc)=>{var Dq=g(),Iq=v();function xq(t){try{return Dq(t)?(typeof t=="bigint"&&(t=Number(t)),Math.sin(t)):NaN}catch{return NaN}}qc.exports=Iq(xq)});var Sc=c((Y0,wc)=>{var Nc=d(),vc=p(),Aq=b(),Eq=D(),Fq=y();function yr(t,e){if(Aq(t)||Fq(t))return yr(t.values,e);Nc(vc(t),"The first argument passed into the `some` function must be an array, Series, or DataFrame!"),Nc(Eq(e),"The second argument passed into the `some` function must be a function!");for(let r of t)if(vc(r)){if(yr(r,e))return!0}else if(e(r))return!0;return!1}wc.exports=yr});var qr=c((K0,Oc)=>{var jq=A();function Mq(t,e){return jq(t,{shouldDropNaNs:e,stdev:!0}).stdev}Oc.exports=Mq});var _c=c(($0,Tc)=>{var Bq=qr();function Uq(t){return Bq(t)}Tc.exports=Uq});var Ic=c((L0,Dc)=>{var Pq=g(),zq=v();function Cq(t){try{return Pq(t)?(typeof t=="bigint"&&(t=Number(t)),Math.tan(t)):NaN}catch{return NaN}}Dc.exports=zq(Cq)});var ct=c((G0,Ec)=>{var xc=d(),Ac=D();function kq(t,e){xc(Ac(t),"`fn` must be a function!");let r=new Date;return e?t(...e):t(),new Date-r}async function Jq(t,e){xc(Ac(t),"`fn` must be a function!");let r=new Date;return e?await t(...e):await t(),new Date-r}Ec.exports={timeSync:kq,timeAsync:Jq}});var jc=c((V0,Fc)=>{var Rq=p(),Yq=b(),Kq=y(),$q=C();function Lq(){return $q([...arguments].map(t=>Rq(t)?t:Yq(t)||Kq(t)?t.values:[t]))}Fc.exports=Lq});var Bc=c((W0,Mc)=>{var Gq=A();function Vq(t,e){return Gq(t,{shouldDropNaNs:e,variance:!0}).variance}Mc.exports=Vq});var Pc=c((H0,Uc)=>{var Wq=d(),Hq=p(),Xq=b(),Qq=y(),Zq=q(),eb=Oe(),tb=E();function rb(){let t=[],e=Object.values(arguments).map(r=>((Xq(r)||Qq(r))&&(r=r.values),Wq(Hq(r),"The `zip` function only works on arrays, Series, and DataFrames!"),r));return tb(0,eb(e.map(r=>r.length))).forEach(r=>{let n=[];e.forEach(s=>{let i=s[r];n.push(Zq(i)?void 0:i)}),t.push(n)}),t}Uc.exports=rb});var zc=c((X0,br)=>{var{copy:nb,decycle:sb}=U(),{DataFrame:ib,Series:ob}=ue(),le={abs:$e(),add:Le(),apply:Te(),arccos:oo(),arcsin:ao(),arctan:lo(),argmax:ho(),argmin:go(),assert:d(),cast:$t(),ceil:vo(),chop:Oo(),clamp:Io(),combinations:Ve().combinations,combinationsIterator:Ve().combinationsIterator,copy:nb,correl:Xo(),cos:Zo(),count:xe(),covariance:Xt(),DataFrame:ib,dataTypes:tu(),decycle:sb,diff:uu(),distance:Su(),divide:Tu(),dot:or(),dropMissing:ur(),dropMissingPairwise:ku(),dropNaN:_t(),dropNaNPairwise:Vu(),dropUndefined:Hu(),every:cr(),exp:ta(),factorial:sa(),find:aa(),findAll:ha(),flatten:P(),float:da(),floor:ga(),identity:Na(),IndexMatcher:Ht(),indexOf:fe(),inferType:xa(),int:G(),intersect:Wt(),inverse:Ma(),isArray:p(),isBoolean:ze(),isBrowser:Ua(),isDataFrame:b(),isDate:pe(),isEqual:z(),isFunction:D(),isJagged:te(),isNested:De(),isNumber:g(),isObject:J(),isSeries:y(),isString:x(),isUndefined:q(),lerp:Ca(),log:Ya(),MathError:Z(),max:Oe(),mean:$a(),median:Ga(),min:kt(),mod:Xa(),mode:Za(),multiply:tr(),ndarray:R(),normal:nc(),ones:ic(),permutations:gr().permutations,permutationsIterator:gr().permutationsIterator,pow:Qe(),print:cc(),product:me(),random:H().random,range:E(),remap:hc(),reshape:Ie(),reverse:ye(),round:dc(),scale:ce(),seed:H().seed,Series:ob,set:C(),shape:w(),shuffle:Pe(),sign:yc(),sin:bc(),some:Sc(),sort:se(),sqrt:er(),stats:A(),std:qr(),stdev:_c(),subtract:rr(),sum:Ze(),tan:Ic(),time:ct().timeSync,timeSync:ct().timeSync,timeAsync:ct().timeAsync,transpose:X(),union:jc(),variance:Bc(),vectorize:v(),zeros:st(),zip:Pc(),dump:function(){let t=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:void 0;if(!t)throw new le.MathError("Cannot dump functions into global scope because none of `globalThis`, `global`, `window`, or `self` exist in the current context!");Object.keys(le).forEach(e=>{try{Object.defineProperty(t,e,{configurable:!1,enumerable:!0,writable:!1,value:le[e]})}catch{t[e]=le[e]}})}};typeof br<"u"&&(br.exports=le);typeof window<"u"&&(window.JSMathTools=le)});var lb=c((Q0,Sr)=>{var{assert:Nr,int:vr,isNumber:wr,isString:ub,random:ab,seed:cb}=zc();function Cc(t,e,r){arguments.length===2&&(wr(arguments[1])?r=null:(r=e,e=null)),Nr(wr(t)&&vr(t)===t,"`keyLength` must be an integer!"),e&&(Nr(wr(e)&&vr(e)===e,"`keySeed` must be an integer!"),cb(e)),r&&Nr(ub(r),"`charset` must be a string!");let n="";r=r||"abcdefg1234567890";for(let s=0;s<t;s++)n+=r[vr(ab()*r.length)];return n}typeof Sr<"u"&&(Sr.exports=Cc);typeof window<"u"&&(window.makeKey=Cc)});lb();})();
27
+ `),za=Ja;function Fn(e,n,t){try{if(!d(e))return NaN;if(!d(n))return NaN;if(!d(t))return NaN;if(typeof e=="bigint"||typeof n=="bigint"){let r=Fn(Number(e),Number(n),t);try{return BigInt(r)}catch{return r}}return t*(n-e)+e}catch{return NaN}}var Ra=O(Fn);function kn(e,n){try{if(n=g(n)?Math.E:n,!d(e))return NaN;if(!d(n))return NaN;if(typeof e=="bigint"||typeof n=="bigint"){let t=kn(Number(e),Number(n));try{return BigInt(t)}catch{return t}}return Math.log(e)/Math.log(n)}catch{return NaN}}var Ca=O(kn);function Ya(e,n){return F(e,{shouldDropNaNs:n}).mean}var qa=Ya;function Ua(e,n){return F(e,{shouldDropNaNs:n,median:!0}).median}var Wa=Ua;function Pn(e,n){try{if(!d(e))return NaN;if(!d(n))return NaN;if(typeof e=="bigint"||typeof n=="bigint"){let t=Pn(Number(e),Number(n));try{return BigInt(t)}catch{return t}}return e%n}catch{return NaN}}var Ka=O(Pn);function Ga(e,n){return F(e,{shouldDropNaNs:n,mode:!0}).mode}var Ha=Ga;function Ve(){let e=W(),n=W();return Math.sqrt(-2*Math.log(e))*Math.cos(2*Math.PI*n)}function La(e){return g(e)?Ve():Ne(B(e),Ve)}var Qa=La;function Va(e){return Ne(B(e),()=>1)}var Xa=Va;function Za(){Object.keys(arguments).forEach(e=>{let n=arguments[e];if(f(n))if(re(n))console.log(n);else{let t=v(n);t.length===1?new I(n).print():t.length==2?new S(n).print():console.log(n)}else b(n)||y(n)?n.print():console.log(n)})}var ei=Za,ni=O((e,n,t,r,a)=>{try{let i=!1;for(let h of[e,n,t,r,a]){if(!d(h))return NaN;typeof h=="bigint"&&(i=!0)}i&&(e=Number(e),n=Number(n),t=Number(t),r=Number(r),a=Number(a));let s=(a-r)*(e-n),o=t-n;if(o===0)return NaN;let u=s/o+r;if(i)try{return BigInt(u)}catch{}return u}catch{return NaN}});function ti(e,n,t,r,a){if(f(e)&&g(r)&&g(a)){r=n,a=t;let i=F(e);n=i.min,t=i.max}return ni(e,n,t,r,a)}var ri=ti;function ai(e){try{return d(e)?typeof e=="bigint"?e:Math.round(e):NaN}catch{return NaN}}var ii=O(ai);function Bn(e){try{return d(e)?typeof e=="bigint"?BigInt(Bn(Number(e))):e<0?-1:e>0?1:0:NaN}catch{return NaN}}var si=O(Bn);function oi(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.sin(e)):NaN}catch{return NaN}}var li=O(oi);function Pe(e,n){if(b(e)||y(e))return Pe(e.values,n);l(f(e),"The first argument passed into the `some` function must be an array, Series, or DataFrame!"),l(D(n),"The second argument passed into the `some` function must be a function!");for(let t of e)if(f(t)){if(Pe(t,n))return!0}else if(n(t))return!0;return!1}var ui=Pe;function hi(e,n){return F(e,{shouldDropNaNs:n,stdev:!0}).stdev}var An=hi;function ci(e){return An(e)}var fi=ci;function mi(e){try{return d(e)?(typeof e=="bigint"&&(e=Number(e)),Math.tan(e)):NaN}catch{return NaN}}var di=O(mi);function gi(){return P([...arguments].map(e=>f(e)?e:b(e)||y(e)?e.values:[e]))}var pi=gi;function yi(e,n){return F(e,{shouldDropNaNs:n,variance:!0}).variance}var bi=yi;function vi(){let e=[],n=Object.values(arguments).map(t=>((b(t)||y(t))&&(t=t.values),l(f(t),"The `zip` function only works on arrays, Series, and DataFrames!"),t));return T(0,ve(n.map(t=>t.length))).forEach(t=>{let r=[];n.forEach(a=>{let i=a[t];r.push(g(i)?void 0:i)}),e.push(r)}),e}var Ni=vi,ne={abs:ze,add:ge,apply:Ne,arccos:Gr,arcsin:Lr,arctan:Vr,argmax:Xr,argmin:ea,assert:l,cast:pn,ceil:ta,chop:aa,clamp:ia,combinations:dn,combinationsIterator:de,copy:j,correl:oa,cos:ua,count:fe,covariance:Nn,DataFrame:S,dataTypes:ha,decycle:V,diff:ca,distance:pa,divide:ba,dot:Tn,dropMissing:jn,dropMissingPairwise:va,dropNaN:cn,dropNaNPairwise:Na,dropUndefined:wa,every:Mn,exp:_a,factorial:Sa,find:Ta,findAll:Da,flatten:A,float:Ma,floor:Ea,identity:ka,IndexMatcher:vn,indexOf:pe,inferType:Aa,int:E,intersect:bn,inverse:$a,isArray:f,isBoolean:K,isBrowser:za,isDataFrame:b,isDate:R,isEqual:J,isFunction:D,isJagged:re,isNested:Be,isNumber:d,isObject:$,isSeries:y,isString:w,isUndefined:g,lerp:Ra,log:Ca,MathError:U,max:ve,mean:qa,median:Wa,min:gn,mod:Ka,mode:Ha,multiply:_n,ndarray:B,normal:Qa,ones:Xa,permutations:Cr,permutationsIterator:Je,pow:Re,print:ei,product:ye,random:W,range:T,remap:ri,reshape:Ae,reverse:q,round:ii,scale:Z,seed:be,Series:I,set:P,shape:v,shuffle:me,sign:si,sin:li,some:ui,sort:G,sqrt:On,stats:F,std:An,stdev:fi,subtract:Sn,sum:Ce,tan:di,timeAsync:Yr,timeSync:Qe,time:Qe,transpose:C,union:pi,variance:bi,vectorize:O,zeros:$e,zip:Ni,dump(){let e=typeof globalThis<"u"?globalThis:typeof global<"u"?global:typeof window<"u"?window:typeof self<"u"?self:void 0;if(!e)throw new ne.MathError("Cannot dump functions into global scope because none of `globalThis`, `global`, `window`, or `self` exist in the current context!");Object.keys(ne).forEach(n=>{try{Object.defineProperty(e,n,{configurable:!1,enumerable:!0,writable:!1,value:ne[n]})}catch{e[n]=ne[n]}})}};typeof window<"u"&&(window.JSMathTools=ne);function $n(e,n,t){arguments.length===2&&(d(arguments[1])?t=null:(t=n,n=null)),l(d(e)&&E(e)===e,"`keyLength` must be an integer!"),n&&(l(d(n)&&E(n)===n,"`keySeed` must be an integer!"),be(n)),t&&l(w(t),"`charset` must be a string!");let r="";t=t||"abcdefg1234567890";for(let a=0;a<e;a++)r+=t[E(W()*t.length)];return r}typeof window<"u"&&(window.makeKey=$n);var Di=$n;export{Di as default};
package/moon.yml CHANGED
@@ -7,6 +7,7 @@ tasks:
7
7
  - esbuild
8
8
  - src/index.js
9
9
  - --bundle
10
+ - --format=esm
10
11
  - --outfile=dist/make-key.js
11
12
  - --minify
12
13
  inputs:
@@ -33,13 +34,16 @@ tasks:
33
34
  local: true
34
35
  platform: node
35
36
  test:
36
- command: jest
37
+ command:
38
+ - npx
39
+ - fake-jest
37
40
  platform: node
38
41
  watch:
39
42
  command:
40
43
  - esbuild
41
44
  - src/index.js
42
45
  - --bundle
46
+ - --format=esm
43
47
  - --outfile=dist/make-key.js
44
48
  - --minify
45
49
  - --watch
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@jrc03c/make-key",
3
- "version": "0.0.27",
3
+ "version": "0.0.29",
4
4
  "description": "",
5
5
  "main": "src/index.js",
6
6
  "devDependencies": {
7
+ "@jrc03c/fake-jest": "^0.0.6",
7
8
  "esbuild": "^0.17.11",
8
- "eslint": "^8.36.0",
9
- "jest": "^29.5.0"
9
+ "eslint": "^8.36.0"
10
10
  },
11
11
  "keywords": [],
12
12
  "author": "",
@@ -16,6 +16,7 @@
16
16
  "key": "./bin.js"
17
17
  },
18
18
  "dependencies": {
19
- "@jrc03c/js-math-tools": "^0.0.80"
20
- }
19
+ "@jrc03c/js-math-tools": "^0.0.82"
20
+ },
21
+ "type": "module"
21
22
  }
package/src/index.js CHANGED
@@ -1,11 +1,11 @@
1
- const {
1
+ import {
2
2
  assert,
3
3
  int,
4
4
  isNumber,
5
5
  isString,
6
6
  random,
7
7
  seed,
8
- } = require("@jrc03c/js-math-tools")
8
+ } from "@jrc03c/js-math-tools"
9
9
 
10
10
  function makeKey(keyLength, keySeed, charset) {
11
11
  if (arguments.length === 2) {
@@ -19,13 +19,13 @@ function makeKey(keyLength, keySeed, charset) {
19
19
 
20
20
  assert(
21
21
  isNumber(keyLength) && int(keyLength) === keyLength,
22
- "`keyLength` must be an integer!"
22
+ "`keyLength` must be an integer!",
23
23
  )
24
24
 
25
25
  if (keySeed) {
26
26
  assert(
27
27
  isNumber(keySeed) && int(keySeed) === keySeed,
28
- "`keySeed` must be an integer!"
28
+ "`keySeed` must be an integer!",
29
29
  )
30
30
 
31
31
  seed(keySeed)
@@ -45,10 +45,8 @@ function makeKey(keyLength, keySeed, charset) {
45
45
  return out
46
46
  }
47
47
 
48
- if (typeof module !== "undefined") {
49
- module.exports = makeKey
50
- }
51
-
52
48
  if (typeof window !== "undefined") {
53
49
  window.makeKey = makeKey
54
50
  }
51
+
52
+ export default makeKey
package/src/index.test.js CHANGED
@@ -1,4 +1,4 @@
1
- const makeKey = require("./index.js")
1
+ import makeKey from "./index.js"
2
2
 
3
3
  test("tests that random strings can be generated correctly", () => {
4
4
  const a = makeKey(123)