df-script 1.9.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +148 -235
  2. package/dist/api.d.ts +41 -36
  3. package/dist/columnExpressions/ColumnExpr.d.ts +5 -8
  4. package/dist/columnExpressions/functions/all.d.ts +13 -13
  5. package/dist/columnExpressions/functions/coalesce.d.ts +2 -2
  6. package/dist/columnExpressions/functions/duration.d.ts +16 -21
  7. package/dist/columnExpressions/functions/element.d.ts +10 -10
  8. package/dist/columnExpressions/functions/exclude.d.ts +14 -14
  9. package/dist/columnExpressions/functions/implode.d.ts +7 -7
  10. package/dist/columnExpressions/functions/lit.d.ts +9 -9
  11. package/dist/columnExpressions/functions/seqRange.d.ts +69 -0
  12. package/dist/columnExpressions/functions/struct.d.ts +6 -6
  13. package/dist/columnExpressions/functions/when.d.ts +25 -28
  14. package/dist/columnExpressions/index.d.ts +3 -7
  15. package/dist/columnExpressions/mixins/AggregationExpr.d.ts +550 -221
  16. package/dist/columnExpressions/mixins/ArithmeticExpr.d.ts +701 -327
  17. package/dist/columnExpressions/mixins/ArrayExpr.d.ts +508 -212
  18. package/dist/columnExpressions/mixins/ComparisonExpr.d.ts +398 -201
  19. package/dist/columnExpressions/mixins/LogicalExpr.d.ts +59 -29
  20. package/dist/columnExpressions/mixins/ManipulationExpr.d.ts +23 -9
  21. package/dist/columnExpressions/mixins/StandardExpr.d.ts +3234 -0
  22. package/dist/columnExpressions/mixins/StringExpr.d.ts +1163 -524
  23. package/dist/columnExpressions/mixins/StructExpr.d.ts +67 -25
  24. package/dist/columnExpressions/mixins/TemporalExpr.d.ts +518 -212
  25. package/dist/columnExpressions/mixins/WindowExpr.d.ts +270 -102
  26. package/dist/columnExpressions/typeInference.d.ts +3 -3
  27. package/dist/columnExpressions/types.d.ts +5 -0
  28. package/dist/columnExpressions/utils.d.ts +7 -0
  29. package/dist/constants.d.ts +11 -2
  30. package/dist/dataframe/dataframe.d.ts +755 -592
  31. package/dist/dataframe/grouped/grouped.d.ts +24 -6
  32. package/dist/dataframe/grouped.d.ts +70 -0
  33. package/dist/dataframe/index.d.ts +1 -1
  34. package/dist/dataframe/lazy.d.ts +37 -0
  35. package/dist/dataframe/types.d.ts +46 -22
  36. package/dist/dataframe/utils.d.ts +10 -4
  37. package/dist/datatypes/index.d.ts +11 -4
  38. package/dist/expressions.js +1 -0
  39. package/dist/expressions.mjs +1 -0
  40. package/dist/functions/concat.d.ts +68 -16
  41. package/dist/functions/index.d.ts +2 -2
  42. package/dist/functions/readCsv.d.ts +35 -0
  43. package/dist/functions/readJson.d.ts +33 -0
  44. package/dist/index.js +5 -6
  45. package/dist/index.mjs +5 -6
  46. package/dist/types.d.ts +42 -9
  47. package/dist/utils/array.d.ts +17 -14
  48. package/dist/utils/csv.d.ts +4 -1
  49. package/dist/utils/date.d.ts +3 -19
  50. package/dist/utils/duration.d.ts +7 -5
  51. package/dist/utils/json.d.ts +5 -3
  52. package/dist/utils/object.d.ts +0 -18
  53. package/dist/utils/string.d.ts +5 -0
  54. package/dist/utils.js +4 -0
  55. package/dist/utils.mjs +4 -0
  56. package/package.json +29 -8
  57. package/dist/assets/index-DBhGK6Tp.css +0 -1
  58. package/dist/assets/index-DEJEV_tU.js +0 -195
  59. package/dist/index.html +0 -17
package/dist/index.mjs CHANGED
@@ -1,6 +1,5 @@
1
- var kn=Object.defineProperty;var Ks=Object.getOwnPropertyDescriptor;var qs=Object.getOwnPropertyNames;var zs=Object.prototype.hasOwnProperty;var Ze=(n=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(n,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):n)(function(n){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+n+'" is not supported')});var R=(n,e)=>()=>(n&&(e=n(n=0)),e);var Vr=(n,e)=>{for(var t in e)kn(n,t,{get:e[t],enumerable:!0})},Gs=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of qs(e))!zs.call(n,o)&&o!==t&&kn(n,o,{get:()=>e[o],enumerable:!(r=Ks(e,o))||r.enumerable});return n};var $r=n=>Gs(kn({},"__esModule",{value:!0}),n);var oe,Kr,qr,Qe,zr,Gr,Jr,Ae=R(()=>{"use strict";oe="*",Kr="*literal*",qr="*coalesce*",Qe="*element*",zr="*struct*",Gr="*duration*",Jr="*when*"});var Wr=R(()=>{"use strict"});function F(n){return n!==null&&typeof n=="object"&&!Array.isArray(n)}function Ne(n){if(!F(n))return!1;try{if(!Object.prototype.hasOwnProperty.call(n,Symbol.toStringTag)&&Object.prototype.toString.call(n)!==oa)return!1;let e=Object.getPrototypeOf(n);if(e===null)return!0;if(Object.getPrototypeOf(e)!==null||!Object.prototype.hasOwnProperty.call(e,"isPrototypeOf"))return!1;let t=Object.getOwnPropertyDescriptor(e,"toString");if(!t||typeof t.value!="function")return!1;let r=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof r!="function"?!1:Function.prototype.toString.call(r)===Ta}catch{return!1}}function io(n){if(typeof n!="function")return!1;try{let e=Function.prototype.toString.call(n),t=e.replace(/^(?:\s+|\/\*[\s\S]*?\*\/|\/\/[^\r\n]*)+/,"");if(/^(?:@[\w$.]+(?:\([^)]*\))?\s+)*class\b/.test(t))return!0;let r=Object.getOwnPropertyDescriptor(n,"prototype");if(r&&!r.writable&&e.includes("[native code]")){let o=no.length;for(let i=0;i<o;i++)try{return Reflect.construct(n,no[i],Da),!0}catch{}}}catch{return!1}return!1}function Se(n,e,t,r){if(!F(n))return!1;if(t)try{let o=t.call(n);return r!==void 0?o===r:!0}catch{return!1}try{return Object.prototype.hasOwnProperty.call(n,Symbol.toStringTag)?!1:Object.prototype.toString.call(n)===e}catch{return!1}}function P(n){if(!F(n))return!1;if(eo)try{return!Number.isNaN(eo.call(n))}catch{return!1}try{return Object.prototype.hasOwnProperty.call(n,Symbol.toStringTag)?!1:Object.prototype.toString.call(n)===Js&&!Number.isNaN(n.getTime())}catch{return!1}}function ge(n){return Se(n,Ws,ma)}function jt(n){return Se(n,Xs,pa)}function Bt(n){return Se(n,Hs,ha)}function so(n){if(!F(n))return!1;if(to)try{return to.call(n,"key"),!0}catch{return!1}return Se(n,Zs,void 0)}function ao(n){if(!F(n))return!1;try{if(n instanceof Error)return!0;let e=n;for(;e!==null;){if(!Object.prototype.hasOwnProperty.call(e,Symbol.toStringTag)&&Object.prototype.toString.call(e)===Ys)return!0;e=Object.getPrototypeOf(e)}}catch{return!1}return!1}function Mn(n){if(!F(n))return!1;try{let e=ArrayBuffer.isView(n)?n.buffer:n;return Lt(e)||!Pt(e)?!1:"detached"in e&&e.detached!==void 0?e.detached===!0:(ga?.call(e,0,0),!1)}catch{return!0}}function Pt(n){return Se(n,ta,da)}function Lt(n){return Se(n,na,ya)}function lo(n){return Se(n,ra,_a)}function Un(n){return Se(n,Qs,ke,"Uint8Array")}function uo(n){return Se(n,ea,ke,"Uint8ClampedArray")}function ie(n){if(!F(n))return n;let e=ro.length;for(let t=0;t<e;t++){let r=ro[t];if(r)try{return r.call(n)}catch{}}return n}var Js,Ws,Xs,Hs,Ys,Zs,Qs,ea,ta,na,ra,oa,ia,Xr,Hr,Yr,sa,aa,la,ua,ca,fa,ma,pa,ha,Nn,Zr,Qr,ke,da,ga,ya,_a,eo,to,xa,ba,wa,Aa,Sa,Ta,oo,Da,Oa,no,ro,ye=R(()=>{"use strict";Js="[object Date]",Ws="[object RegExp]",Xs="[object Set]",Hs="[object Map]",Ys="[object Error]",Zs="[object URLSearchParams]",Qs="[object Uint8Array]",ea="[object Uint8ClampedArray]",ta="[object ArrayBuffer]",na="[object SharedArrayBuffer]",ra="[object DataView]",oa="[object Object]",ia=typeof Date=="function"?Date.prototype:void 0,Xr=typeof RegExp=="function"?RegExp.prototype:void 0,Hr=typeof Set=="function"?Set.prototype:void 0,Yr=typeof Map=="function"?Map.prototype:void 0,sa=typeof URLSearchParams=="function"?URLSearchParams.prototype:void 0,aa=typeof String=="function"?String.prototype:void 0,la=typeof Number=="function"?Number.prototype:void 0,ua=typeof Boolean=="function"?Boolean.prototype:void 0,ca=typeof BigInt=="function"?BigInt.prototype:void 0,fa=typeof Symbol=="function"?Symbol.prototype:void 0,ma=Xr?Object.getOwnPropertyDescriptor(Xr,"source")?.get:void 0,pa=Hr?Object.getOwnPropertyDescriptor(Hr,"size")?.get:void 0,ha=Yr?Object.getOwnPropertyDescriptor(Yr,"size")?.get:void 0,Nn=typeof ArrayBuffer=="function"?ArrayBuffer.prototype:void 0,Zr=typeof SharedArrayBuffer=="function"?SharedArrayBuffer.prototype:void 0,Qr=typeof DataView=="function"?DataView.prototype:void 0,ke=typeof Uint8Array=="function"?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Uint8Array.prototype),Symbol.toStringTag)?.get:void 0,da=Nn?Object.getOwnPropertyDescriptor(Nn,"byteLength")?.get:void 0,ga=Nn?.slice,ya=Zr?Object.getOwnPropertyDescriptor(Zr,"byteLength")?.get:void 0,_a=Qr?Object.getOwnPropertyDescriptor(Qr,"byteLength")?.get:void 0,eo=ia?.valueOf,to=sa?.has,xa=aa?.valueOf,ba=la?.valueOf,wa=ua?.valueOf,Aa=ca?.valueOf,Sa=fa?.valueOf,Ta=Function.prototype.toString.call(Object);oo=function(){},Da=new Proxy(oo,{construct(){return this}}),Oa=typeof ArrayBuffer=="function"?new ArrayBuffer(0):void 0,no=[[],[oo],[Oa],[{}]];ro=[ba,xa,wa,Aa,Sa]});var Te,co,Me,_t,_e,et,fo,mo,po,vn,Fn,jn,Bn,tt,xt,bt,Ea,ho,go,yo,_o,xo,bo,wo,Ao,So,To,Do,Oo,Eo,Io,Co,Ro,ko,No,Mo,Uo,Pn,vo,xe=R(()=>{"use strict";Te=new TextEncoder,co=6048e5,Me=864e5,_t=36e5,_e=6e4,et=1e3,fo=1,mo=.001,po=1e-6,vn=1e3,Fn=1e6,jn=1000n,Bn=1000000n,tt="\0",xt="",bt=-1,Ea=4294967295,ho=-9223372036854775808n,go=9223372036854775807n,yo=0n,_o=18446744073709551615n,xo=-2147483648,bo=2147483647,wo=0,Ao=Ea,So=-32768,To=32767,Do=0,Oo=65535,Eo=-128,Io=127,Co=0,Ro=255,ko=31,No=127,Mo=55296,Uo=57343,Pn=Object.freeze({9:"\\t",10:"\\n",11:"\\v",12:"\\f",13:"\\r"}),vo=Object.freeze({b:"\b",0:"\0",...Object.fromEntries(Object.entries(Pn).map(([n,e])=>[e.slice(1),String.fromCharCode(Number(n))]))})});function v(n,e){return typeof n!="number"?!1:Number.isNaN(n)?e?.allowNaN??e?.allowNonFiniteNumbers??!1:Number.isFinite(n)?!0:e?.allowNonFiniteNumbers??!1}function Fo(n){for(let e=1;e<n.length;e++)if(n[e].length!==3)return!1;return!0}function Vo(n,e){if(Ia.test(n))return null;let t=n.trim();if(t==="")return null;t.startsWith("(")&&t.endsWith(")")&&(t="-"+t.slice(1,-1).trim());let r=t[t.length-1];(r==="-"||r==="+")&&t.length>1&&(t=r+t.slice(0,-1).trim()),e||(t=t.replace(Ca,""));let o=t.includes("."),i=t.includes(",");if(o&&i){let s=t.lastIndexOf("."),a=t.lastIndexOf(","),l=a>s,u=l?".":",",c=l?a:s,f=t.slice(0,c).split(u);return f.length>1&&!Fo(f)||f[0].replace(jo,"").length>3?null:l?t.replace(Bo,"").replace(Vt,"."):t.replace(Vt,"")}if(i||o){let s=i?",":".",a=t.split(s);if(a.length>2||s===","&&a.length===2&&a[1].length===3){let l=a[0].replace(jo,"").length;if(l===0){if(s===","||a.length>2)return null}else return l>3?null:Fo(a)?t.replace(i?Vt:Bo,""):null}if(i)return t.replace(Vt,".")}return t}function j(n,{allowNonFiniteNumbers:e=!1,strictNumericString:t=!1,floatScientific:r=!0}={}){if(n==null||typeof n=="symbol")return null;switch(n=ie(n),typeof n){case"number":return v(n,{allowNonFiniteNumbers:e})?n:null;case"boolean":return n?1:0;case"bigint":{let o=Number(n);return v(o,{allowNonFiniteNumbers:e})?o:null}case"object":{if(P(n)){let o=n.getTime();return v(o,{allowNonFiniteNumbers:e})?o:null}return null}case"string":{let o=Vo(n,t);if(o===null)return null;if(e){let a=o.toLowerCase();if(a==="nan"||a==="-nan"||a==="+nan")return NaN;if(a==="infinity"||a==="+infinity")return 1/0;if(a==="-infinity")return-1/0}if(Lo.test(o)&&!r||!Po.test(o))return null;let s=Number(o);return v(s,{allowNonFiniteNumbers:e})?s:null}default:return null}}function $o({locale:n="en-US",accountingNegatives:e=!1,fallback:t="NaN",formatNonFinite:r=!1,...o}={}){o.useGrouping===void 0&&(o.useGrouping=!1),o.maximumFractionDigits===void 0&&o.maximumSignificantDigits===void 0&&(o.maximumFractionDigits=20),e&&(o.currencySign="accounting",o.style===void 0&&(o.style="decimal"));let i=new Intl.NumberFormat(n,o);return s=>{if(typeof s=="bigint")return e&&s<0n?`(${i.format(-s)})`:i.format(s);let a=j(s,{allowNonFiniteNumbers:!0});return a===null||Number.isNaN(a)?t:Number.isFinite(a)?e&&a<0?`(${i.format(Math.abs(a))})`:i.format(a):r?t:e&&a===-1/0?`(${i.format(1/0)})`:String(a)}}function Ln(n,{floatPrecision:e="Float64",allowNonFiniteNumbers:t=!0,floatScientific:r=!0,strictNumericString:o=!1}={}){let i=j(n,{allowNonFiniteNumbers:t,floatScientific:r,strictNumericString:o});return i===null||(e==="Float32"&&(i=Math.fround(i)),!v(i,{allowNonFiniteNumbers:t}))?null:i}function De(n,{range:e="Int32"}={}){if(!v(n)||!Number.isInteger(n))return!1;let t=typeof e=="string"?Ko[e]:e;return n>=t.min&&n<=t.max}function se(n,{range:e="Int32",coerce:t="truncate"}={}){let r=j(n);if(r===null)return null;switch(t){case"round":r=Math.round(r);break;case"floor":r=Math.floor(r);break;case"ceil":r=Math.ceil(r);break;case"truncate":r=Math.trunc(r);break}let o=typeof e=="string"?Ko[e]:e;return Ee(r,{min:o.min,max:o.max})}function $t(n,{range:e="Int64"}={}){let t=ie(n);if(typeof t!="bigint")return!1;let r=typeof e=="string"?qo[e]:e;return t>=r.min&&t<=r.max}function Oe(n,{range:e="Int64",truncate:t=!1}={}){if(n==null||typeof n=="symbol")return null;try{n=ie(n)}catch{return null}let r=null;if(typeof n=="bigint")r=n;else if(typeof n=="string"){let i=Vo(n,!1);if(i===null||!Po.test(i))return null;if(Lo.test(i)){let s=i.search(/[eE]/),a=i.slice(0,s),l=i.slice(s+1),u=parseInt(l,10);if(Number.isNaN(u)||u>1e5||u<-1e5)return null;let c=a.startsWith("-");(c||a.startsWith("+"))&&(a=a.slice(1));let f=a.indexOf("."),m=a,h=0;f!==-1&&(h=a.length-f-1,m=a.slice(0,f)+a.slice(f+1)),m=m.replace(/^0+/,"")||"0";try{let p=BigInt(m);c&&(p=-p);let d=u-h;if(d>=0)r=p*10n**BigInt(d);else{let g=10n**BigInt(-d),y=p%g;if(!t&&y!==0n)return null;r=p/g}}catch{return null}}else{let s=i.indexOf(".");if(s!==-1){if(!t&&/[^0]/.test(i.slice(s+1)))return null;i=i.slice(0,s)}try{r=BigInt(i)}catch{return null}}}else{let i=j(n);if(i===null||!t&&!Number.isInteger(i))return null;r=BigInt(Math.trunc(i))}let o=typeof e=="string"?qo[e]:e;return r<o.min||r>o.max?null:r}function Ra(n,e){let t=n-e;if(t<0||e<0)return null;if(t>15)return Number.MAX_SAFE_INTEGER;let r=Math.min(e,16),o=Math.pow(10,t)-Math.pow(10,-r);return o>0?o:null}function Vn(n,e){let t=n.toString();if(t.includes("e")){let r=Math.pow(10,e);return Math.round(n*r)/r}return+(Math.round(+(t+"e"+e))+"e"+-e)}function Kt(n,{precision:e,scale:t}={}){let r=j(n);if(r===null)return null;let o=r;if(t!==void 0&&(o=Vn(o,t)),e!==void 0){let s=Ra(e,t??0);s!==null&&(o=Ee(o,{min:-s,max:s}))}return o}function Ee(n,e){if(!e)return n;let{min:t=null,max:r=null,safe:o=!0}=e;if(t!==null&&r!==null&&t>r)return t;let i=n;if(o&&typeof i=="number"){if(Number.isNaN(i))return t!==null?t:r!==null?r:n;if(i===1/0)return r!==null?r:n;if(i===-1/0)return t!==null?t:n}return t!==null&&i<t?t:r!==null&&i>r?r:i}function zo(n){let e=n|0;return function(){let t=e=e+1831565813|0;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}}var Po,Ia,Ca,Lo,jo,Bo,Vt,Ko,qo,Ue=R(()=>{"use strict";ye();xe();Po=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,Ia=/0[xobXOB]/,Ca=/[\s_]/g,Lo=/[eE]/;jo=/^[+-]/,Bo=/\./g,Vt=/,/g;Ko={Int8:{min:Eo,max:Io},Int16:{min:So,max:To},Int32:{min:xo,max:bo},UInt8:{min:Co,max:Ro},UInt16:{min:Do,max:Oo},UInt32:{min:wo,max:Ao}};qo={Int64:{min:ho,max:go},UInt64:{min:yo,max:_o}}});function K(n){if(!ArrayBuffer.isView(n))return!1;if(ke)return ke.call(n)!==void 0;let e=Object.prototype.toString.call(n);return e!=="[object DataView]"&&e.endsWith("Array]")}function k(n){return Array.isArray(n)||K(n)}function be(n){return n==null?[]:Array.isArray(n)?[...n]:K(n)?Array.from(n):[n]}function qt(n,e,t){let r=n.length,o=e<-r||e>=r;if(o&&!t)throw new ne(`Index ${e} is out of bounds for array of length ${r}`);return o?null:n.at(e)??null}function Wo(n){if(typeof n=="function"){let e=io(n);return{check:e?t=>t instanceof n:t=>!!n(t),coerce:t=>{if(e)return t instanceof n?t:null;let r=n(t);return typeof r=="boolean"?r?t:null:r}}}switch(n){case"string":return{check:e=>typeof e=="string",coerce:e=>String(e)};case"number":return{check:v,coerce:e=>j(e)??NaN};case"boolean":return{check:e=>typeof e=="boolean",coerce:Boolean};case"bigint":return{check:$t,coerce:e=>Oe(e)};case"date":return{check:P,coerce:e=>J(e)};case"object":return{check:F,coerce:e=>F(e)?e:null};case"plainObject":return{check:Ne,coerce:e=>Ne(e)?e:null};case"null":return{check:e=>e===null,coerce:()=>null};case"undefined":return{check:e=>e===void 0,coerce:()=>{}};case"nullish":return{check:e=>e==null,coerce:()=>null};default:return{check:()=>!0,coerce:e=>e}}}function Q(n,e,{mode:t="every",allowNulls:r=!1,allowEmpty:o=!0}={}){if(!k(n))return!1;let i=n,s=i.length;if(s===0)return o?t==="every":!1;let{check:a}=Wo(e);if(t==="every"){for(let l=0;l<s;l++){let u=i[l];if(!(r&&u==null)&&!a(u))return!1}return!0}for(let l=0;l<s;l++){let u=i[l];if(r&&u==null||a(u))return!0}return!1}function ve(n,e="any",{mode:t="every",allowNulls:r=!1,allowEmpty:o=!0}={}){let i=be(n),s=i.length;if(s===0){if(!o)throw new ne("Expected non-empty array");return[]}let{check:a,coerce:l}=Wo(e),u=new Array(s),c=0;for(let f=0;f<s;f++){let m=i[f];if(r&&m==null){u[c++]=m;continue}let h=l(m);if(a(h))u[c++]=h;else if(t==="every")throw new ne(`Failed to convert array item at index ${f} ('${m}') to target type '${e}'`)}if(t==="some"){if(c===0)throw new ne(`No items in array could be converted to target type '${e}'`);c<s&&(u.length=c)}return u}function wt(n,{descending:e=!1,nullsLast:t=!0}={}){if(!k(n))return[];let r=n,o=r.length;if(o===0)return[];if(K(n)){let f=r.slice().sort();return e&&f.reverse(),Array.from(f)}let i=[],s=[],a=!0,l=!0,u=!0;for(let f=0;f<o;f++){let m=r[f];if(m==null)s.push(m);else if(i.push(m),u){let h=typeof m;h!=="number"&&(a=!1),h!=="string"&&(l=!1),!a&&!l&&(u=!1)}}return i.length>1&&(a?i.sort(e?(f,m)=>m-f:(f,m)=>f-m):l?i.sort(e?(f,m)=>m.localeCompare(f):(f,m)=>f.localeCompare(m)):i.sort((f,m)=>{let h=typeof f,p=typeof m;if(h!==p){let d=h<p?-1:1;return e?-d:d}return f<m?e?1:-1:f>m?e?-1:1:0})),s.length===0?i:t?i.concat(s):s.concat(i)}function B(n){if(!k(n))return Go;let e=n.length;if(e===0)return Go;let t=null,r=null,o=null,i=null,s=0,a=0,l=0,u=0,c=0,f=1,m=0,h=0;for(let g=0;g<e;g++){let y=n[g];if(y==null){a++;continue}if(typeof y=="number"&&Number.isNaN(y)){l++,a++;continue}(t==null||y<t)&&(t=y,o=g),(r==null||y>r)&&(r=y,i=g);let _=j(y);if(_!==null){let S=u+_;Math.abs(u)>=Math.abs(_)?c+=u-S+_:c+=_-S+u,u=S,f*=_,s++;let b=_-m;m+=b/s;let x=_-m;h+=b*x}}let p=s>1?h/(s-1):0,d=l>0;return{sum:s>0?u+c:null,product:s>0?f:null,count:s,min:t,max:r,nanMin:d?NaN:t,nanMax:d?NaN:r,minIdx:o,maxIdx:i,mean:s>0?(u+c)/s:null,variance:p,std:Math.sqrt(p),nullCount:a,nanCount:l,len:e,hasNulls:a>0,isNumeric:s>0&&s===e-a}}function Fe(n,{strict:e=!1,keySelector:t}={}){let r=Array.from(n),o=new Map;if(e){let s=t??G,a=new Map,l=r.length;for(let c=0;c<l;c++){let f=r[c],m=s(f),h=a.get(m);h===void 0?a.set(m,{val:f,count:1}):h.count++}let u=[];for(let c of a.values())u.push(c.val);for(let c=0;c<l;c++){let f=r[c],m=s(f),h=a.get(m);o.set(f,h.count)}return{values:u,count:u.length,frequencies:o}}let i=r.length;for(let s=0;s<i;s++){let a=r[s];o.set(a,(o.get(a)??0)+1)}return{values:Array.from(o.keys()),count:o.size,frequencies:o}}function zt(n,{step:e=1,offsetStart:t=0,offsetEnd:r,maxItemsGathered:o,null_on_oob:i=!0}={}){if(n==null)return null;if(o!==void 0&&o<=0)return[];if(e===0)throw new M("Step size step cannot be zero");let s=n.length;if(s===0?t!==0:t>=s||t<-s){if(!i)throw new ne(`Start offset ${t} is out of bounds for array of length ${s}`);return null}let l=t<0?s+t:t,u=r!==void 0?r<0?s+r:r:e>0?s:-1,c=[];if(e>0)for(let f=l;f<u&&f<s&&!(f>=0&&(c.push(n[f]),o!==void 0&&c.length>=o));f+=e);else for(let f=l;f>u&&f>=0&&!(f<s&&(c.push(n[f]),o!==void 0&&c.length>=o));f+=e);return c}function Gt(n,e=",",{ignoreNulls:t=!1,nullValue:r="",prefix:o="",suffix:i="",limit:s,truncationMarker:a="...",valueFormatter:l}={}){let u=n.length,c=[],f=s!==void 0?Math.max(0,s):u,m=!1;for(let h=0;h<u;h++){if(c.length>=f){m=!0;break}let p=n[h];p!=null?c.push(l?l(p,h):String(p)):t||c.push(r)}return o+c.join(e)+(m?a:"")+i}function qe(n,e,t={}){let r=n.length,{mode:o="cumulative",step:i=1,coerce:s=d=>d,condition:a,reverse:l=!1,startIndex:u=l?r-1:0,endIndex:c=l?-1:r}=t,f=l?-1:1,m=u,h=c,p=(d,g)=>{(!a||a(n[d],d,n))&&(n[d]=s(g))};if(o==="constant"){let d=s(e);for(let g=m;l?g>h:g<h;g+=f)p(g,d)}else if(o==="independent")if(typeof i=="function"){let d=0;for(let g=m;l?g>h:g<h;g+=f)p(g,i({index:d,initialValue:e,originalValue:n[g],absoluteIndex:g,targetArray:n})),d++}else for(let d=m;l?d>h:d<h;d+=f)p(d,e+d*i);else{let d=e,g=!0,y=0;for(let _=m;l?_>h:_<h;_+=f)g?(p(_,d),g=!1):(typeof i=="function"?d=i({prev:d,index:y,originalValue:n[_],absoluteIndex:_,targetArray:n}):d=d+i,p(_,d)),y++}}function Xo(n){let e=n.length,t=0,r=new Float64Array(e);for(let i=0;i<e;i++){let s=n[i],a=j(s,{allowNonFiniteNumbers:!0});a!==null&&v(a,{allowNonFiniteNumbers:!0,allowNaN:!1})&&(r[t++]=a)}if(t===0)return null;let o=r.subarray(0,t);return o.sort(),o}function nt(n){let e=Xo(n);if(!e)return null;let t=e.length,r=Math.floor(t/2);return t%2!==0?e[r]:(e[r-1]+e[r])/2}function Jt(n,e){if(e<0||e>1)return null;let t=Xo(n);if(!t)return null;let r=t.length,o=e*(r-1),i=Math.floor(o),s=Math.ceil(o);return i===s?t[i]:t[i]+(o-i)*(t[s]-t[i])}function Wt(n){if(!k(n)||n.length===0)return null;let e=new Map,t=n.length,r=0,o=[];for(let i=0;i<t;i++){let s=n[i];if(s==null||typeof s=="number"&&!v(s,{allowNonFiniteNumbers:!0,allowNaN:!1}))continue;let a=(e.get(s)??0)+1;e.set(s,a),a>r?(r=a,o=[s]):a===r&&o.push(s)}return o.length===0?null:wt(o)}function Ho(n,e){let t=n.length;if(t===0)return[];let r=Math.trunc(e);if(isNaN(r)||r===0)return Array.isArray(n)?n.slice():Array.from(n);let o=Math.abs(r);if(o>=t)return new Array(t).fill(null);let i=new Array(t);if(r>0){i.fill(null,0,r);for(let s=r;s<t;s++){let a=n[s-r];i[s]=a??null}}else{let s=t-o;for(let a=0;a<s;a++){let l=n[a+o];i[a]=l??null}i.fill(null,s,t)}return i}function $n(n){let e=n.length,t=0,r=0,o=0,i=0,s=0,a=0;for(let m=0;m<e;m++){let h=n[m];if(!h)continue;let p=j(h[0]),d=j(h[1]);if(p===null||d===null)continue;t++;let g=p-r;r+=g/t;let y=p-r,_=d-o;o+=_/t;let S=d-o;a+=g*S,i+=g*y,s+=_*S}if(t<2)return{covariance:null,correlation:null};let l=a/(t-1);if(i===0||s===0)return{covariance:l,correlation:null};let u=Math.sqrt(i*s);if(u===0||Number.isNaN(u))return{covariance:l,correlation:null};let c=a/u,f=Math.max(-1,Math.min(1,c));return{covariance:l,correlation:f}}function Jo(n){let e=n.length,t=new Int32Array(e);for(let i=0;i<e;i++)t[i]=i;t.sort((i,s)=>n[i]-n[s]);let r=new Float64Array(e),o=0;for(;o<e;){let i=o+1;for(;i<e&&n[t[i]]===n[t[o]];)i++;let s=(o+1+i)/2;for(let a=o;a<i;a++)r[t[a]]=s;o=i}return r}function ka(n,e,t){if(t<2)return null;let r=0,o=0,i=0,s=0,a=0;for(let c=0;c<t;c++){let f=n[c],m=e[c],h=f-r;r+=h/(c+1);let p=f-r,d=m-o;o+=d/(c+1);let g=m-o;a+=h*g,i+=h*p,s+=d*g}if(i===0||s===0)return null;let l=Math.sqrt(i*s);if(l===0||Number.isNaN(l))return null;let u=a/l;return Math.max(-1,Math.min(1,u))}function Yo(n){let e=n.length,t=new Float64Array(e),r=new Float64Array(e),o=0;for(let a=0;a<e;a++){let l=n[a];if(l){let u=j(l[0]),c=j(l[1]);u!==null&&c!==null&&(t[o]=u,r[o]=c,o++)}}if(o<2)return null;let i=Jo(t.subarray(0,o)),s=Jo(r.subarray(0,o));return ka(i,s,o)}function Zo(n){let e=n.length,t=0,r=0;for(let o=0;o<e;o++){let i=n[o];if(!i)continue;let s=j(i[0]),a=j(i[1]);s===null||a===null||(t+=s*a,r++)}return r>0?t:null}function Qo(n){let e=n.length,t=0,r=0,o=0;for(let i=0;i<e;i++){let s=n[i];if(!s)continue;let a=j(s[0]),l=j(s[1]);a===null||l===null||(t+=a*l,r+=l,o++)}return o===0||Math.abs(r)<1e-12?null:t/r}function ei(n,e){let t=Math.max(0,Math.floor(n||0)),r=Math.max(0,Math.floor(e||0)),o=t*r;if(!De(o,{range:"UInt32"}))throw new M(`Cartesian product size (${o} rows) exceeds maximum JavaScript array capacity.`);let i=new Array(o),s=new Array(o),a=0;for(let l=0;l<t;l++)for(let u=0;u<r;u++)i[a]=l,s[a]=u,a++;return{leftIndices:i,rightIndices:s}}function Xt(n,e,t={}){let r=t.side==="right",o=t.getValue,i=0,s=n.length;for(;i<s;){let a=i+s>>>1,l=o?o(a,n[a]):n[a];(r?l<=e:l<e)?i=a+1:s=a}return i}function ti(n){if(!k(n))return null;let{mean:e,count:t}=B(n);if(t<2||e===null)return null;let r=0,o=0,i=0,s=n.length;for(let a=0;a<s;a++){let l=j(n[a]);if(l===null)continue;let u=l-e,c=u*u;r+=c,o+=c*u,i+=c*c}return r<=0?null:{count:t,mean:e,m2Sum:r,m3Sum:o,m4Sum:i}}function ni(n,e={}){let t=ti(n);if(!t)return null;let{count:r,m2Sum:o,m3Sum:i}=t,s=o/r,l=i/r/Math.pow(s,1.5);if(e?.bias??!0)return v(l)?l:null;if(r<3)return null;let c=Math.sqrt(r*(r-1))/(r-2)*l;return v(c)?c:null}function ri(n,e={}){let t=ti(n);if(!t)return null;let{count:r,m2Sum:o,m4Sum:i}=t,s=o/r,l=i/r/(s*s),u=l-3,c=e?.fisher??!0;if(e?.bias??!0){let p=c?u:l;return v(p)?p:null}if(r<4)return null;let m=(r-1)/((r-2)*(r-3))*((r+1)*u+6),h=c?m:m+3;return v(h)?h:null}function oi(n,e={}){if(!n||n.length===0)return null;let{base:t=Math.E,normalize:r=!0}=e;if(t<=0||t===1)return null;let o=n.length,i=Math.log(t);if(r){let s=new Map,a=0;for(let u=0;u<o;u++){let c=n[u];if(c==null||Number.isNaN(c))continue;let f=G(c);s.set(f,(s.get(f)||0)+1),a++}if(a===0)return null;let l=0;for(let u of s.values()){let c=u/a;c>0&&(l-=c*(Math.log(c)/i))}return v(l)?((l<0||Object.is(l,-0))&&(l=0),l):null}else{let s=[],a=0;for(let c=0;c<o;c++){let f=n[c];if(f==null||Number.isNaN(f))continue;let m=Number(f);if(!v(m)||m<0)return null;m>0&&(s.push(m),a+=m)}if(s.length===0||a<=0)return null;let l=0,u=s.length;for(let c=0;c<u;c++){let f=s[c]/a;f>0&&(l-=f*(Math.log(f)/i))}return v(l)?((l<0||Object.is(l,-0))&&(l=0),l):null}}function Ht(n,e){if(!n||n.length===0)return null;let t=null,r=n.length;for(let o=0;o<r;o++){let i=Oe(n[o],{range:"Int64"});i!==null&&(t=t===null?i:e(t,i))}return t===null?null:t>=Number.MIN_SAFE_INTEGER&&t<=Number.MAX_SAFE_INTEGER?Number(t):t}function Kn(n,e){if(!n||n.length===0)return null;let t=n.length,r=new Array(t),o=new Array(t);for(let s=0;s<t;s++){let a=n[s];r[s]=a?.[0],o[s]=a?.[1]}let i=B(o)[e];return i!==null?r[i]:null}var Go,Yt=R(()=>{"use strict";ye();Ue();Zt();At();X();Go={sum:null,product:null,count:0,min:null,max:null,nanMin:null,nanMax:null,minIdx:null,maxIdx:null,mean:null,variance:0,std:0,nullCount:0,nanCount:0,len:0,hasNulls:!1,isNumeric:!1}});function St(n,e={}){let{format:t="json",allowPrimitives:r=!1,trimBeforeParse:o=!1,reviver:i,ndjson:{skipInvalidLines:s=!1,maxLines:a,skipLines:l}={},guard:u,onError:c}=e,f="fallback"in e,m=f?e.fallback:Na;if(typeof n!="string")return f?m:n;let h=o?n.trim():n;if(h==="")return f?m:n;let p;try{if(t==="ndjson"){let d=[],g=0,y=0,_=0,S=/\r\n|\n|\r/g,b;for(;;){b=S.exec(h);let x=b?h.substring(_,b.index):h.substring(_);b&&(_=S.lastIndex);let A=x.trim();if(A!==""&&(g++,l===void 0||g>l))if(!r&&!Ma(A)){if(!s)throw new M("NDJSON line is not wrapped and primitives are disallowed")}else{if(a!==void 0&&y>=a)break;try{d.push(JSON.parse(A,i)),y++}catch(w){if(!s)throw w}}if(!b)break}if(d.length===0)throw new je("No valid NDJSON lines processed");p=d}else{if(!r&&!Ua(h))throw new M("JSON string is not wrapped and primitives are disallowed");p=JSON.parse(h,i)}if(u&&!u(p))throw new M("Parsed value failed guard validation")}catch(d){if(c)try{c(d)}catch{}return f?m:n}return p}function ze(n={}){let e=n.bigintStrategy??"string",t=n.handleCircular?new WeakSet:null,o=Array.isArray(n.replacer)?n.replacer.map(String):null,i=s=>e==="number"&&s<=BigInt(Number.MAX_SAFE_INTEGER)&&s>=BigInt(Number.MIN_SAFE_INTEGER)?Number(s):s.toString();return function(a,l){let u=l;if(typeof n.replacer=="function")u=n.replacer.call(this,a,l);else if(o&&a!==""&&!Array.isArray(this)&&!o.includes(a))return;if(u===void 0)return;let c=u===l&&this!=null?this[a]:u;if(typeof n.onCustom=="function"){let f=n.onCustom.call(this,a,c);if(f!==c||f===void 0&&c!==void 0)return f}if(c!==null&&typeof c!="object"&&typeof c!="bigint")return u;if(t&&c!==null&&typeof c=="object"){if(a===""&&(t=new WeakSet),t.has(c))return n.onCircular?n.onCircular.call(this,a,c):"[Circular]";t.add(c)}return typeof c=="bigint"?n.voidBigIntReplacement?u:n.onBigInt?n.onBigInt(c):i(c):K(c)?n.voidTypedArrayReplacement?u:n.onTypedArray?n.onTypedArray(c):Array.from(c):jt(c)?n.voidSetReplacement?u:n.onSet?n.onSet(c):Array.from(c):Bt(c)?n.voidMapReplacement?u:n.onMap?n.onMap(c):Array.from(c.entries()):ge(c)?n.voidRegExpReplacement?u:n.onRegExp?n.onRegExp(c):c.toString():P(c)?n.voidDateReplacement?u:n.onDate?n.onDate(c):n.formatDate?n.formatDate(c):c.toISOString():ao(c)?n.onError?n.onError(c):{name:c.name,message:c.message,stack:c.stack}:so(c)?n.onURLSearchParams?n.onURLSearchParams(c):c.toString():u}}function va(n){let e=n.trim().replace(/^\$/,"");if(!e)return[];let t=[],r=/\.\.\[\s*(?:'((?:\\.|[^'])*)'|"((?:\\.|[^"])*)"|(\*))\s*\]|\.\.([^\.\[]+)|\.([\w$-]+|\*)|\[\s*(?:'((?:\\.|[^'])*)'|"((?:\\.|[^"])*)"|(\*)|(-?\d*(?::-?\d*){0,2}))\s*\]/g,o,i=0;for(;(o=r.exec(e))!==null;){if(o.index!==i)return null;i=r.lastIndex;let[,s,a,l,u,c,f,m,h,p]=o,d=s??a,g=f??m;if(d!==void 0)t.push({type:"rec",key:si(d)});else if(l!==void 0)t.push({type:"rec",key:qn});else if(u!==void 0)t.push({type:"rec",key:u});else if(c!==void 0)t.push(c===qn?{type:"wildcard"}:{type:"prop",key:c});else if(g!==void 0)t.push({type:"prop",key:si(g)});else if(h!==void 0)t.push({type:"wildcard"});else if(p!==void 0)if(p.includes(":")){let[y,_,S]=p.split(":");t.push({type:"slice",start:se(y)??void 0,end:se(_)??void 0,step:se(S)??1})}else{let y=se(p);if(y===null)return null;t.push({type:"idx",idx:y})}}return i===e.length?t:null}function li(n,e,t,r=new Set){if(n==null||!ai(e.key)||typeof n!="object"||r.has(n))return;r.add(n);let o=Array.isArray(n);if(!o&&!F(n))return;e.key===qn?ui(n,{type:"wildcard"},t):!o&&Object.prototype.hasOwnProperty.call(n,e.key)&&t.push(n[e.key]);let i=o?n:Object.values(n);for(let s=0;s<i.length;s++)li(i[s],e,t,r)}function ui(n,e,t){if(n!=null)switch(e.type){case"prop":F(n)&&ai(e.key)&&Object.prototype.hasOwnProperty.call(n,e.key)&&t.push(n[e.key]);break;case"idx":{if(!Array.isArray(n))break;let r=e.idx<0?n.length+e.idx:e.idx;r>=0&&r<n.length&&t.push(n[r]);break}case"slice":{if(!Array.isArray(n)||e.step===0)break;let r=e.step??1,o=e.start??(r>0?0:n.length-1),i=zt(n,{step:r,offsetStart:o,offsetEnd:e.end,null_on_oob:!0});if(i)for(let s=0;s<i.length;s++)t.push(i[s]);break}case"wildcard":{let r=Array.isArray(n)?n:F(n)?Object.values(n):null;if(r)for(let o=0;o<r.length;o++)t.push(r[o]);break}case"rec":li(n,e,t);break}}function ci(n,e){if(n==null||Qt(e))return null;let t=n;if(typeof n=="string"){let s=n.trim();if(s==="")return null;let a=St(s,{allowPrimitives:!0,fallback:ii});if(a===ii)throw new M(`Invalid JSON string encountered in json_path_match: "${n}"`);t=a}let r=va(e);if(r===null)return null;let o=[t];for(let s=0;s<r.length;s++){if(o.length===0)return null;let a=[];for(let l=0;l<o.length;l++)ui(o[l],r[s],a);o=a}if(o.length===0||o[0]==null)return null;let i=o[0];if(typeof i=="object")try{return JSON.stringify(i)}catch{return null}return String(i)}var Na,ii,Ma,Ua,qn,si,ai,Tt=R(()=>{"use strict";Yt();ye();Ue();At();X();xe();Na=Symbol("no_fallback"),ii=Symbol("invalid"),Ma=n=>{let e=n.length;if(e<2)return!1;let t=n[0],r=n[e-1];return t==="{"&&r==="}"||t==="["&&r==="]"},Ua=n=>{let e=0,t=n.length;for(;e<t&&/\s/.test(n[e]);)e++;let r=t-1;for(;r>=e&&/\s/.test(n[r]);)r--;if(e>=r)return!1;let o=n[e],i=n[r];return o==="{"&&i==="}"||o==="["&&i==="]"};qn="*",si=n=>n.replace(/\\(.)/g,(e,t)=>vo[t]??t),ai=n=>n!==void 0&&n!=="__proto__"&&n!=="constructor"&&n!=="prototype"});function Fa(n){return!F(n)||Mn(n)?!1:ArrayBuffer.isView(n)?Un(n)||uo(n)||lo(n):Pt(n)||Lt(n)}function zn(n,e){if(n==null)return!1;try{if(Fa(n))return!0;if(e?.strict)return!1;if(typeof n=="string")return!0;if(ArrayBuffer.isView(n))return!Mn(n);if(Array.isArray(n)){let t=n.length;for(let r=0;r<t;r++)if(!De(n[r],ja))return!1;return!0}}catch{return!1}return!1}function en(n,e){try{if(!zn(n,e))return null;if(Un(n))return n;if(ArrayBuffer.isView(n))return new Uint8Array(n.buffer,n.byteOffset,n.byteLength);if(Pt(n)||Lt(n))return new Uint8Array(n);if(typeof n=="string")return Te.encode(n);if(Array.isArray(n))return Uint8Array.from(n)}catch{return null}return null}var ja,Gn=R(()=>{"use strict";ye();Ue();xe();ja={range:"UInt8"}});function Qt(n){let e=ie(n);return typeof e=="string"?e.trim().length===0:!1}function rt(n,e=null,t={}){if(n==null)return t.returnStringOnNull?"":null;let{mode:r="both",returnStringOnNull:o=!1,maxScanStart:i=1,maxScanEnd:s=1,maxMatchesStart:a=1,maxMatchesEnd:l=1,trimFirst:u=!1,stringOptions:c}=t,{literal:f=!1,caseInsensitive:m=!1}=c??{},h=(A,w="both")=>w==="start"?A.trimStart():w==="end"?A.trimEnd():A.trim(),p=n;if(u&&e!=null&&(p=h(n,r)),e==null){let A=h(p,r);return o||A!==""?A:null}let d=ge(e)?A=>{try{e.lastIndex=0}catch{}return e.test(A)}:(()=>{let A=new Set(m?e.toLowerCase():e);return w=>A.has(m?w.toLowerCase():w)})(),g=p.length;if(i===1&&a===1&&s===1&&l===1&&!f){let A=0,w=g;if(r==="both"||r==="start")for(;A<g&&d(p[A]);)A++;if(r==="both"||r==="end")for(;w>A&&d(p[w-1]);)w--;let D=A===0&&w===g?p:p.substring(A,w);return o||D!==""?D:null}let _=new Uint8Array(g),S=(A,w,D)=>{if(g===0||D===0)return;let O=A?0:g-1,C=A?g:-1,N=A?1:-1,H=!1,Z=0,W=0;for(let le=O;le!==C;le+=N)if(d(p[le])){if(!H){if(w!==null&&w>=0&&W>=w||D!==null&&D>=0&&Z>=D)break;H=!0,Z++}_[le]=1}else if(H=!1,W++,w!==null&&w>=0&&W>=w)break},b=(A,w,D,O,C)=>{if(g===0||C===0||w===0)return;let N=D?0:g-1,H=0,Z=0,W=m?p.toLowerCase():p;for(;N>=0&&N<g&&!(C!==null&&C>=0&&H>=C);){let le=D?N:N-w+1;if(!D&&le<0)break;let fe=D?W.indexOf(A,le):W.lastIndexOf(A,le);if(fe===-1)break;let Ft=D?fe-N:N-(fe+w-1);if(Z+=Ft,O!==null&&O>=0&&Z>=O)break;for(let Ye=0;Ye<w;Ye++)_[fe+Ye]=1;H++,N=D?fe+w:fe-1}};if(r==="both"||r==="start")if(f&&typeof e=="string"){let A=m?e.toLowerCase():e;b(A,e.length,!0,i,a)}else S(!0,i,a);if(r==="both"||r==="end")if(f&&typeof e=="string"){let A=m?e.toLowerCase():e;b(A,e.length,!1,s,l)}else S(!1,s,l);let x="";for(let A=0;A<g;A++)_[A]===0&&(x+=p[A]);return o||x!==""?x:null}function G(n,{depth:e=0,maxDepth:t=50}={}){if(e>t)return"v:circular";if(n===null)return"v:null";if(n===void 0)return"v:undefined";if(P(n))return`d:${n.getTime()}`;if(K(n)){let o=n.toString();return`u:${n.constructor.name}:${o.length}:${o}`}if(Array.isArray(n)){let o=n.length,i=new Array(o),s={depth:e+1,maxDepth:t};for(let a=0;a<o;a++)i[a]=G(n[a],s);return`a:[${i.join(xt)}]`}if(jt(n)){let o=Array.from(n),i=o.length,s=new Array(i),a={depth:e+1,maxDepth:t};for(let l=0;l<i;l++)s[l]=G(o[l],a);return s.sort(),`set:[${s.join(xt)}]`}if(Bt(n)){let o=Array.from(n.keys()),i=o.length,s=new Array(i),a={depth:e+1,maxDepth:t};for(let l=0;l<i;l++){let u=o[l];s[l]=`${G(u,a)}${tt}${G(n.get(u),a)}`}return s.sort(),`map:{${s.join(xt)}}`}if(typeof n=="object"&&typeof n.toJSON=="function"){let o=n.toJSON();if(o!==n)return`j:${G(o,{depth:e+1,maxDepth:t})}`}if(ge(n)){let o=n.toString();return`r:${o.length}:${o}`}if(Ne(n)){let o=Object.keys(n).sort(),i=o.length,s=new Array(i),a={depth:e+1,maxDepth:t};for(let l=0;l<i;l++){let u=o[l];s[l]=`${G(u,a)}${tt}${G(n[u],a)}`}return`o:{${s.join(xt)}}`}if(typeof n=="function"){let o=n.toString();return`f:${o.length}:${o}`}if(typeof n=="string")return`s:${n.length}:${n}`;if(typeof n=="symbol"){let o=n.toString();return`y:${o.length}:${o}`}if(typeof n=="number"||typeof n=="boolean"||typeof n=="bigint")return`${typeof n}:${n}`;let r=String(n);return`${typeof n}:${r.length}:${r}`}function Va(n){if(n==null)return[];let e=String(n);if(!e)return[];let r=e.normalize("NFC").replace(Ba,"$1$2").match(Pa)||[],o=[];for(let i=0;i<r.length;i++){let s=r[i];La.has(s)||o.push(s)}return o}function ot(n,e){let t=Va(n),r=t.length;if(r===0)return"";let{format:o}=e;if(o==="camel"||o==="pascal"||o==="title"){let i=o==="title"?" ":"",s=new Array(r);for(let a=0;a<r;a++){let l=t[a];s[a]=a===0&&o==="camel"?l.toLowerCase():l.charAt(0).toUpperCase()+l.slice(1).toLowerCase()}return s.join(i)}if(o==="kebab"||o==="snake"){let i=o==="kebab"?"-":"_",s=new Array(r);for(let a=0;a<r;a++)s[a]=t[a].toLowerCase();return s.join(i)}return String(n)}function gi(n){return typeof n!="string"&&(n=String(n)),Te.encode(n)}function Ja(n){let e=en(n);if(!e)return"";if(hi&&typeof Uint8Array.prototype.toBase64=="function")return e.toBase64();if(nn)return Dt.from(e).toString("base64");let t="",r=e.length;for(let o=0;o<r;o+=fi){let i=e.subarray(o,o+fi);t+=String.fromCharCode.apply(null,i)}return btoa(t)}function Wa(n){if(typeof n!="string"&&(n=String(n)),nn)return Dt.from(n,"utf-8").toString("hex");let e=gi(n),t=e.length,r="";for(let o=0;o<t;o++)r+=di[e[o]];return r}function Xa(n){typeof n!="string"&&(n=String(n));let e=gi(n);return Ja(e)}function yi(n,e){if(n==null)return null;let t=Ha[e];if(!t)throw new Error(`Unsupported encoding: '${e}'. Supported encodings are 'hex' and 'base64'.`);return t(String(n))}function Ya(n){typeof n!="string"&&(n=String(n));let e=n.replace(qa,r=>Ka[r]),t=e.length%4;return t===0?e:e.padEnd(e.length+(4-t),"=")}function Za(n,e=!0){if(typeof n!="string"&&(n=String(n)),n!==""&&(n.length%4!==0||!za.test(n)))throw new Error("Invalid base64 encoding format");if(hi)return Uint8Array.fromBase64(n,{strict:e});if(nn)return new Uint8Array(Dt.from(n,"base64"));let t=atob(n),r=t.length,o=new Uint8Array(r);for(let i=0;i<r;i++)o[i]=t.charCodeAt(i);return o}function Qa(n){typeof n!="string"&&(n=String(n));let e=n.trim();if(e.length%2!==0||!Ga.test(e))throw new Error("Invalid hex string format");if($a)return Uint8Array.fromHex(e);if(nn){let r=Dt.from(e,"hex");if(r.length!==e.length/2)throw new Error("Invalid hex string format");return new Uint8Array(r)}let t=new Uint8Array(e.length/2);for(let r=0;r<t.length;r++){let o=parseInt(e.substring(r*2,r*2+2),16);if(Number.isNaN(o))throw new Error("Invalid hex string format");t[r]=o}return t}function el(n,e=!0){try{let t=Qa(n);return new TextDecoder("utf-8",{fatal:e}).decode(t)}catch(t){if(e)throw t;return null}}function tl(n,e=!0){try{typeof n!="string"&&(n=String(n));let t=n.trim(),r=Ya(t),o=Za(r,e);return new TextDecoder("utf-8",{fatal:e}).decode(o)}catch(t){if(e)throw t;return null}}function _i(n,e,t={}){if(n==null)return null;let r=nl[e];if(!r)throw new Error(`Unsupported encoding: '${e}'. Supported encodings are 'hex' and 'base64'.`);let o=typeof t=="boolean"?t:t.strict??!0;return r(String(n),o)}function pe(n,e){let t=ie(n);if(t==null)return"";let r=ge(t)?t.source:typeof t=="string"?t:String(t);return(e?.mode??"tc39")==="tc39"?typeof RegExp.escape=="function"&&!rl.test(r)?RegExp.escape(r):r.replace(ol,mi):r.replace(il,mi)}function it(n,e,t){if(n==null||e==null)return null;let r=typeof n=="string"?n:String(n),o=t?.global??!1;try{if(!ge(e)){let a=typeof e=="string"?e:String(e),l=o?"g":"";if(t?.asciiCaseInsensitive&&(l+="i"),(a.includes("\\p{")||a.includes("\\P{"))&&!l.includes("u")&&!l.includes("v"))try{return{reg:new RegExp(a,l+"u"),input:r}}catch{try{return{reg:new RegExp(a,l+"v"),input:r}}catch{}}try{return{reg:new RegExp(a,l),input:r}}catch{return null}}let i=e.flags.replace(/y/g,"");o?i.includes("g")||(i+="g"):i=i.replace(/g/g,""),t?.asciiCaseInsensitive!==void 0&&(i=t.asciiCaseInsensitive?i.includes("i")?i:i+"i":i.replace(/i/g,""));let s=new RegExp(e.source,i);return s.lastIndex=0,{reg:s,input:r}}catch{return null}}function pi(n){let e=Object.create(null);n.index!==void 0&&Object.defineProperty(e,"_index",{value:String(n.index),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"_length",{value:n.length,writable:!0,enumerable:!1,configurable:!0});for(let t=0;t<n.length;t++)e[String(t)]=n[t]!==void 0?n[t]:null;if(n.groups)for(let t in n.groups){let r=n.groups[t];e[t]=r!==void 0?r:null}return e}function Jn(n,e){if(typeof e=="string")return e in n?n[e]:null;let t=Number(e);if(Number.isNaN(t))return null;let r=Math.trunc(t);if(r>=0)return n[String(r)]??null;let i=(n._length??0)+r;return i>=1?n[String(i)]??null:null}function sl(n,e,t,r,o){let{literal:i=!1,mode:s,asciiCaseInsensitive:a=!1}=r??{},l=i?pe(e,{mode:s}):e,c=it(n,l,{global:!0,asciiCaseInsensitive:a})?.reg??null;if(!c)return[];let f=[];c.lastIndex=0;let m;for(;(m=c.exec(n))!==null;){let h=m.index,p=c.lastIndex,d=o(m,h,p);if(f.push({start:h,end:p,patternIndex:t,payload:d}),h===p){if(h===n.length)break;let g=n.codePointAt(h),y=g!=null&&g>65535?2:1;c.lastIndex=h+y}}return f}function bi(n){if(n.length<=1)return n;n.sort((o,i)=>{if(o.start!==i.start)return o.start-i.start;let s=o.patternIndex??o.i??0,a=i.patternIndex??i.i??0;return s-a});let e=[],t=0,r=n.length;for(let o=0;o<r;o++){let i=n[o];i.start>=t&&(e.push(i),t=i.end)}return e}function wi(n,e,t,r,o){let{overlapping:i=!1,leftmost:s,...a}=t??{},l=s??!0;if(i&&s)throw new M("Cannot specify both 'overlapping' and 'leftmost' as true.");if(n==null||e==null)return null;let u=be(e),c=u.length;if(c===0)return[];if(i){let h=new Array(c);for(let p=0;p<c;p++)h[p]=r(u[p]);return h}let f=[];for(let h=0;h<c;h++){let p=Ot(n,u[h],{...a,global:!1});if(p&&p[0]&&p[0]._index!=null){let d=Number(p[0]._index),g=p[0][0]?.length??0;f.push({i:h,start:d,end:d+g,payload:o(p[0],d)})}}let m=new Array(c).fill(null);if(f.length===0)return m;if(l){let h=bi(f);for(let p=0;p<h.length;p++){let d=h[p];m[d.i]=d.payload}}else{let h=[];f.sort((g,y)=>g.i-y.i);let p=f.length;for(let g=0;g<p;g++){let y=f[g],_=!1,S=h.length;for(let b=0;b<S;b++){let x=h[b],A=!1;if(y.start===y.end&&x.start===x.end?A=y.start===x.start:x.start===x.end?A=x.start>=y.start&&x.start<y.end:y.start===y.end?A=y.start>=x.start&&y.start<x.end:A=y.start<x.end&&y.end>x.start,A){_=!0;break}}_||h.push(y)}let d=h.length;for(let g=0;g<d;g++){let y=h[g];m[y.i]=y.payload}}return m}function Ot(n,e,t){let r=it(n,e,t);if(!r)return null;if(!t?.global){let s=r.input.match(r.reg);return s?[pi(s)]:null}let o=Array.from(r.input.matchAll(r.reg));if(o.length===0)return null;let i=new Array(o.length);for(let s=0;s<o.length;s++)i[s]=pi(o[s]);return i}function Wn(n,e,t){let r=Ot(n,e,t);return r?Jn(r[0],t?.groupIndex??1):null}function Ai(n,e,t){let r=Ot(n,e,{...t,global:!0});if(!r)return null;let o=t?.groupIndex??0,i=new Array(r.length);for(let s=0;s<r.length;s++)i[s]=Jn(r[s],o);return i}function Si(n,e,t){return Ot(n,e,t)?.[0]??null}function Ti(n,e,t){let r=t?.groupIndex??0;return wi(n,e,t,o=>Wn(n,o,{...t,groupIndex:r}),o=>Jn(o,r))}function tn(n,e,t){if(n==null||e==null)return null;let{literal:r=!1,asciiCaseInsensitive:o=!1,mode:i}=t??{};if(r){let l=ge(e),u=pe(e,{mode:i}),c=o?"i":"";if(l)for(let h of["i","u","v","m","s"])e.flags.includes(h)&&!c.includes(h)&&(c+=h);let f=new RegExp(u,c),m=n.match(f);return!m||m.index==null?null:Te.encode(n.slice(0,m.index)).length}let s=Ot(n,e,{...t,global:!1});if(!s||!s[0]||s[0]._index==null)return null;let a=Number(s[0]._index);return Te.encode(n.slice(0,a)).length}function Di(n,e,t){if(t?.literal){if(n==null||e==null)return null;let r=be(e),o=new Array(r.length);for(let i=0;i<r.length;i++)o[i]=tn(n,r[i],t);return o}return wi(n,e,t,r=>tn(n,r,t),(r,o)=>Te.encode(n.slice(0,o)).length)}function Oi(n,e,t){if(n==null||e==null)return null;let{literal:r=!0,inclusive:o=!1,limit:i,exact:s=!1,strict:a=!1,mode:l,...u}=t??{},c=r?pe(e,{mode:l}):e,f=it(n,c,{...u,global:!0});if(!f)return null;let{reg:m}=f;m.lastIndex=0;let h=[],p=0,d=0,g=i!=null&&i>=0?i:1/0,y;for(;d<g&&(y=m.exec(n))!==null;){let S=y.index,b=m.lastIndex;if(S===b){if(S===n.length)break;let x=n.codePointAt(S),A=x!=null&&x>65535?2:1;if(S>0&&S>=p&&(h.push(n.slice(p,S)),d++,p=S,d>=g))break;m.lastIndex=S+A;continue}h.push(n.slice(p,o?b:S)),p=b,d++}if(h.push(n.slice(p)),i==null||i<0)return h;let _=i+1;if(a&&h.length<_)throw new M(`split exact error: expected string to split into at least ${_} parts, but got ${h.length}`);if(s)for(;h.length<_;)h.push(null);return h}function Ei(n,e,t,r,o,i){return n.replace(/\$\$|\$([$'`&]|\d{1,2}|<[^>]+>)/g,(s,a)=>{if(s==="$$")return"$";if(!a)return s;if(a==="$")return"$";if(a==="&")return e;if(a==="`")return r.slice(0,t);if(a==="'")return r.slice(t+e.length);if(a.startsWith("<")){if(i===void 0)return s;let u=a.slice(1,-1);return i[u]??""}let l=Number(a);if(l>0&&l<=o.length)return o[l-1]??"";if(a.length===2){let u=Number(a[0]);if(u>0&&u<=o.length)return(o[u-1]??"")+a[1]}return s})}function Xn(n,e,t,r){if(n==null||e==null||t==null)return null;let o=typeof n=="string"?n:String(n),{literal:i=!1,n:s,mode:a,...l}=r??{},u=s??(l?.global?1/0:1),c=v(u,{allowNonFiniteNumbers:!0,allowNaN:!1})?Math.trunc(u):1;if(c===0)return o;let f=i?pe(e,{mode:a}):e,m=it(o,f,{...l,global:l?.global??c!==1});if(!m)return o;let{reg:h}=m,p=typeof t=="function";if(c===1||c<0||c===1/0){if(i&&!p){let y=String(t);return o.replace(h,()=>y)}return o.replace(h,t)}let d=0,g=p?"":String(t);return o.replace(h,(...y)=>{if(d++>=c)return y[0];if(p)return String(t(...y));if(i)return g;let _=y.length,S=typeof y[_-1]=="object"&&y[_-1]!==null,b=S?y[_-1]:void 0,x=S?y[_-3]:y[_-2],A=y.slice(1,S?_-3:_-2);return Ei(g,y[0],x,o,A,b)})}function Ii(n,e,t,r){if(n==null||e==null)return null;let o=typeof n=="string"?n:String(n),i,s=null,a=null;if(!Array.isArray(e)&&typeof e=="object")i=Object.keys(e),s=Object.values(e);else if(Array.isArray(e))if(i=e,Array.isArray(t))if(t.length===1&&i.length>1)a=t[0];else{if(t.length!==i.length)throw new M(`replace_many length mismatch: expected ${i.length} replacement strings, got ${t.length}`);s=t}else if(t!=null)a=t;else return o;else return o;let l=i.length;if(l===0)return o;let u=[];for(let p=0;p<l;p++){let d=i[p],g=s?s[p]:a;if(d==null||g==null)continue;let y=sl(o,d,p,r,(_,S)=>{let b=Array.prototype.slice.call(_,1);if(typeof g=="function"){let x=[_[0],...b,S,o];return _.groups!==void 0&&x.push(_.groups),String(g(...x))}return r?.literal?String(g):Ei(String(g),_[0],S,o,b,_.groups)});for(let _=0;_<y.length;_++)u.push(y[_])}if(u.length===0)return o;let c=bi(u),f="",m=0,h=c.length;for(let p=0;p<h;p++){let d=c[p];f+=o.slice(m,d.start)+d.payload,m=d.end}return f+=o.slice(m),f}var Ba,Pa,La,Dt,nn,$a,hi,fi,di,Ka,qa,za,Ga,ru,Ha,nl,rl,xi,ol,il,mi,At=R(()=>{"use strict";ye();Yt();Tt();Gn();Ue();xe();X();Ba=/(\p{L})['’](\p{L})/gu,Pa=new RegExp(["\\p{Lu}+s(?!\\p{Ll})","\\p{Lu}+(?=\\p{Lu}\\p{Ll})","\\p{Lu}+\\p{Ll}*","\\p{Ll}+","\\p{N}+","\\p{L}+"].join("|"),"gu"),La=new Set(["__proto__","proto","constructor","prototype"]);Dt=typeof globalThis<"u"?globalThis.Buffer:void 0,nn=typeof Dt<"u",$a=typeof Uint8Array<"u"&&typeof Uint8Array.fromHex=="function",hi=typeof Uint8Array<"u"&&typeof Uint8Array.fromBase64=="function",fi=8192,di=new Array(256);for(let n=0;n<256;n++)di[n]=n.toString(16).padStart(2,"0");Ka={"-":"+",_:"/"},qa=/[-_]/g,za=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Ga=/^[0-9a-fA-F]*$/,ru=ze({handleCircular:!0});Ha={hex:Wa,base64:Xa};nl={hex:el,base64:tl};rl=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,xi="\\x00-\\x1F\\x7F\\u{D800}-\\u{DFFF}",ol=new RegExp(`[${xi}\\\\^$*+?.()|[\\]{}/#,=<>&!%:;@~'"\`-]`,"gu"),il=new RegExp(`[${xi}]|[\\x20-\\x2F\\x3A-\\x40\\x5B-\\x5E\\x5F\\x60\\x7B-\\x7E]`,"gu"),mi=n=>{let e=n.codePointAt(0),t=e<=ko||e===No,r=n.length===1&&e>=Mo&&e<=Uo;if(t||r){let o=Pn[e];if(o)return o;let i=e.toString(16);return t?`\\x${i.padStart(2,"0")}`:`\\u${i.padStart(4,"0")}`}return"\\"+n}});function ul(n){let e=Ci.get(n);return e||(e=new Intl.DateTimeFormat("en-US",{timeZone:n,hourCycle:"h23",weekday:"short",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",fractionalSecondDigits:3}),Ci.set(n,e)),e}function cl(n,e){let t=`${n}_${e}`,r=Ri.get(t);return r||(r=new Intl.DateTimeFormat(n,{timeZoneName:"short",timeZone:e}),Ri.set(t,r)),r}function fl(n){let e=ki.get(n);if(e===void 0){try{Intl.DateTimeFormat(void 0,{timeZone:n}),e=!0}catch{e=!1}ki.set(n,e)}return e}function we(n){let e=!n||n==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:n;return fl(e)?e:"UTC"}function ee(n,e=0,t=1,r=0,o=0,i=0,s=0){let a=new Date(0);return a.setUTCFullYear(n,e,t),a.setUTCHours(r,o,i,s),a}function ml(n,e,t){let r=[0,3,2,5,0,3,5,1,4,6,2,4],o=n;return e<3&&(o-=1),(o+Math.floor(o/4)-Math.floor(o/100)+Math.floor(o/400)+r[e-1]+t)%7}function ae(n,e){let t=we(e);if(t.toUpperCase()==="UTC")return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),ms:n.getUTCMilliseconds(),dayOfWeek:n.getUTCDay(),timeZone:"UTC"};let o=ul(t).formatToParts(n),i="0",s="0",a="0",l="0",u="0",c="0",f="0";for(let _=0,S=o.length;_<S;_++){let b=o[_];switch(b.type){case"year":i=b.value;break;case"month":s=b.value;break;case"day":a=b.value;break;case"hour":l=b.value;break;case"minute":u=b.value;break;case"second":c=b.value;break;case"fractionalSecond":f=b.value;break}}let m=parseInt(i,10),h=parseInt(s,10),p=parseInt(a,10),d=parseInt(l,10);d===24&&(d=0);let g=Math.round(parseFloat("0."+f)*1e3)||0,y=ml(m,h,p);return{year:m,month:h,day:p,hour:d,minute:parseInt(u,10),second:parseInt(c,10),ms:g,dayOfWeek:y,timeZone:t}}function st(n,e){let t=we(e);if(t.toUpperCase()==="UTC")return 0;let r=ae(n,"UTC"),o=ae(n,t),i=ee(r.year,r.month-1,r.day,r.hour,r.minute,r.second,r.ms).getTime(),s=ee(o.year,o.month-1,o.day,o.hour,o.minute,o.second,o.ms).getTime();return Math.round((s-i)/_e)}function Ni(n,e){let t=n>=0?"+":"-",r=Math.abs(n),o=String(Math.floor(r/60)).padStart(2,"0"),i=String(r%60).padStart(2,"0");return e==="iso"?`${t}${o}:${i}`:`${t}${o}${i}`}function J(n,e){let t=ie(n);if(t==null)return null;let r=null;if(P(t))r=t;else if(typeof t=="number"||typeof t=="bigint")r=new Date(pl(t));else if(typeof t=="string"){if(Qt(t))return null;r=new Date(t)}if(!r||!P(r))return null;if(e?.dateOnly){let o=typeof t=="string",i=o&&ll.test(t),s=o&&!i&&!Mi.test(t)?"local":"UTC",a=ae(r,s);return ee(a.year,a.month-1,a.day)}return r}function on(n){let e=ie(n);if(e==null)return null;let t=null;if(typeof e=="string"){let o=e.trim();if(al.test(o)){let i=Mi.test(o);t=J(`1970-01-01T${o}${i?"":"Z"}`)}}let r=t||J(e);return r?Ge(r,{format:"%H:%M:%S.%ms"}):null}function Ui(n,e="ms"){let t=n.getTime();switch(e){case"s":return Math.floor(t/et);case"ms":return t;case"us":return BigInt(t)*jn;case"ns":return BigInt(t)*Bn}}function pl(n){if(typeof n=="bigint"){let t=n<0n?-n:n;return t<=30000000000n?Number(n)*1e3:t<=30000000000000n?Number(n):t<=30000000000000000n?Number(n/jn):Number(n/Bn)}let e=Math.abs(n);return e<=3e10?n*1e3:e<=3e13?n:e<=3e16?Math.floor(n/1e3):Math.floor(n/1e6)}function vi(n){if(!P(n))return null;let e=n.getUTCFullYear();return Math.floor((e-1)/100)+1}function Hn(n,e={field:"week"}){if(!P(n))return null;let t=ee(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()),r=t.getUTCDay()||7;if(t.setUTCDate(t.getUTCDate()+4-r),e.field==="year")return t.getUTCFullYear();let o=ee(t.getUTCFullYear(),0,1),i=Math.round((t.getTime()-o.getTime())/Me);return Math.floor(i/7)+1}function Fi(n){if(!P(n))return null;let e=n.getUTCFullYear();return Math.floor((e-1)/1e3)+1}function sn(n,e,t=1){return P(n)?ee(n.getUTCFullYear(),n.getUTCMonth()+e,t):null}function Yn(n){if(!P(n))return null;let e=ee(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()).getTime(),t=ee(n.getUTCFullYear(),0,1).getTime();return Math.floor((e-t)/Me)+1}function ji(n){return P(n)?Math.floor(n.getUTCMonth()/3)+1:null}function Zn(n){let e;if(P(n))e=n.getUTCFullYear();else if(v(n))e=n;else return!1;return e%4===0&&e%100!==0||e%400===0}function Bi(n){return n.replace(/%[FTRD]/g,e=>dl[e]||e)}function gl(n){let e=n.replace(":",""),t=e[0]==="+"?1:-1,r=parseInt(e.slice(1,3),10)||0,o=parseInt(e.slice(3,5),10)||0;return t*(r*60+o)}function Ge(n,{format:e,locale:t,timeZone:r="UTC"}){if(!P(n)||typeof e!="string")return"";let o=t&&t.trim()||Intl.DateTimeFormat().resolvedOptions().locale||"en-US",i=Bi(e),s=null,a=()=>s??=ae(n,r);return i.replace(rn,(l,u)=>{if(u==="%")return"%";let c=Qn[u];return c?c.format(n,o,r,a()):l})}function Pi(n,{format:e,strict:t=!0,defaultTimeZone:r="UTC"}){if(typeof n!="string"||typeof e!="string")return null;let o=Bi(e),i=[],s="",a=0;rn.lastIndex=0;let l;for(;(l=rn.exec(o))!==null;){let d=o.slice(a,l.index);s+=pe(d);let g=l[1];if(g==="%")s+="\\%";else{let y=Qn[g];y&&y.parseRegex?(i.push(y),s+=`(${y.parseRegex})`):s+=pe(l[0])}a=rn.lastIndex}s+=pe(o.slice(a));let u=new RegExp("^\\s*"+s+"\\s*$"),c=n.match(u);if(!c)return t?null:J(n);let f={year:1970,month:1,day:1,hour:0,minute:0,second:0,ms:0,offset:null},m=null,h=!1;for(let d=0;d<i.length;d++){let g=c[d+1],y=i[d],_=y.parseNormalize?y.parseNormalize(g):parseInt(g,10);y.key==="j"&&(h=!0),y.parseField==="ampm"?m=_:y.parseField==="offset"?f.offset=_:y.parseField&&(f[y.parseField]=_)}if(m&&(m==="PM"&&f.hour<12&&(f.hour+=12),m==="AM"&&f.hour===12&&(f.hour=0)),h){let d=Zn(f.year)?366:365;if(f.day<1||f.day>d)return null;let g=ee(f.year,0,1);g.setUTCDate(f.day),f.month=g.getUTCMonth()+1,f.day=g.getUTCDate()}let p=ee(f.year,f.month-1,f.day,f.hour,f.minute,f.second,f.ms);if(!P(p)||p.getUTCFullYear()!==f.year||p.getUTCMonth()+1!==f.month||p.getUTCDate()!==f.day||p.getUTCHours()!==f.hour||p.getUTCMinutes()!==f.minute||p.getUTCSeconds()!==f.second||p.getUTCMilliseconds()!==f.ms)return null;if(f.offset)p=new Date(p.getTime()-gl(f.offset)*_e);else if(r.toUpperCase()!=="UTC"){let d=we(r),g=st(p,d);p=new Date(p.getTime()-g*_e);let y=st(p,d);y!==g&&(p=new Date(p.getTime()-(y-g)*_e))}return P(p)?p:null}function Li(n,e,{excludeWeekdays:t=[],holidays:r=[],roll:o}={}){if(!De(e))throw new ne(`The offset parameter 'n' must be a whole integer. Received: ${e}`);if(t.length===0&&(!r||Array.isArray(r)&&r.length===0||r instanceof Set&&r.size===0)&&!o)return e;if(7-t.length<=0)throw new ne("All weekdays are excluded; cannot offset.");let s=new Set;if(r instanceof Set)for(let f of r){let m=new Date(f);t.includes(m.getUTCDay())||s.add(f)}else if(Array.isArray(r))for(let f=0;f<r.length;f++){let m=J(r[f]);if(!m||t.includes(m.getUTCDay()))continue;let h=ee(m.getUTCFullYear(),m.getUTCMonth(),m.getUTCDate());s.add(h.getTime())}let a=f=>t.includes(f.getUTCDay())?!0:s.has(f.getTime()),l=ee(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()),u=new Date(l.getTime());if(o&&a(u)){if(o==="raise")throw new ne("Start date falls on an excluded day or holiday.");let f=o==="forward"?1:-1;for(;a(u);)u.setUTCDate(u.getUTCDate()+f)}if(e!==0){let f=e>0?1:-1,m=0,h=Math.abs(e);for(;m<h;)u.setUTCDate(u.getUTCDate()+f),a(u)||m++}let c=u.getTime()-l.getTime();return Math.round(c/Me)}function er(n,e,t){let r=we(e),o=t?.type??"total",i;if(o==="total")i=st(n,r);else{let l=ae(n,r).year,u=st(ee(l,0,1),r),c=st(ee(l,6,1),r),f=Math.min(u,c);o==="daylightSavingTime"?i=st(n,r)-f:i=f}switch(t?.format??"milliseconds"){case"minutes":return i;case"hours":return i/60;case"iso":return Ni(i,"iso");case"basic":return Ni(i,"basic");default:return i*_e}}function Vi(n,e={}){if(!P(n))return null;let t=e.excludeWeekdays??[0,6],r=n.getUTCDay();if(t.includes(r))return!1;let o=e.holidays;if(o){if(o instanceof Set){let i=Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate());if(o.has(i))return!1}else if(Array.isArray(o)&&o.length>0){let i=new Set;for(let a=0;a<o.length;a++){let l=J(o[a]);l&&i.add(Date.UTC(l.getUTCFullYear(),l.getUTCMonth(),l.getUTCDate()))}let s=Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate());if(i.has(s))return!1}}return!0}function $i(n,e={}){let t=ae(n,e?.timeZone??void 0),r=e?.year??t.year,o=e?.month!=null?e.month-1:t.month-1,i=e?.day??t.day,s=e?.hour??t.hour,a=e?.minute??t.minute,l=e?.second??t.second,u=e?.ms??t.ms;return ee(r,o,i,s,a,l,u)}var al,Mi,ll,Ci,Ri,ki,Qn,hl,rn,dl,Zt=R(()=>{"use strict";At();X();ye();Ue();xe();al=/^\d{2}:\d{2}/,Mi=/(?:Z|[+-]\d{2}(?::?\d{2})?)$/i,ll=/^\d{4}-\d{2}-\d{2}$/,Ci=new Map;Ri=new Map;ki=new Map;Qn={Y:{key:"Y",format:(n,e,t,r)=>{let o=r.year;return o>=0?String(o).padStart(4,"0"):"-"+String(Math.abs(o)).padStart(4,"0")},parseRegex:"[+-]?\\d{4,}",parseField:"year"},y:{key:"y",format:(n,e,t,r)=>String(Math.abs(r.year)%100).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"year",parseNormalize:n=>{let e=parseInt(n,10);return e+(e>=69?1900:2e3)}},m:{key:"m",format:(n,e,t,r)=>String(r.month).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"month"},d:{key:"d",format:(n,e,t,r)=>String(r.day).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"day"},e:{key:"e",format:(n,e,t,r)=>String(r.day).padStart(2," "),parseRegex:"\\s?\\d{1,2}",parseField:"day"},H:{key:"H",format:(n,e,t,r)=>String(r.hour).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"hour"},I:{key:"I",format:(n,e,t,r)=>String(r.hour%12||12).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"hour"},p:{key:"p",format:(n,e,t,r)=>r.hour>=12?"PM":"AM",parseRegex:"AM|PM|am|pm",parseField:"ampm",parseNormalize:n=>n.toUpperCase()},M:{key:"M",format:(n,e,t,r)=>String(r.minute).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"minute"},S:{key:"S",format:(n,e,t,r)=>String(r.second).padStart(2,"0"),parseRegex:"\\d{2}",parseField:"second"},A:{key:"A",format:(n,e,t)=>n.toLocaleDateString(e,{weekday:"long",timeZone:we(t)})},a:{key:"a",format:(n,e,t)=>n.toLocaleDateString(e,{weekday:"short",timeZone:we(t)})},B:{key:"B",format:(n,e,t)=>n.toLocaleDateString(e,{month:"long",timeZone:we(t)})},b:{key:"b",format:(n,e,t)=>n.toLocaleDateString(e,{month:"short",timeZone:we(t)})},h:{key:"h",format:(n,e,t)=>n.toLocaleDateString(e,{month:"short",timeZone:we(t)})},j:{key:"j",format:(n,e,t,r)=>String(Yn(ee(r.year,r.month-1,r.day))??1).padStart(3,"0"),parseRegex:"\\d{3}",parseField:"day",parseNormalize:n=>parseInt(n,10)},u:{key:"u",format:(n,e,t,r)=>String(r.dayOfWeek||7)},w:{key:"w",format:(n,e,t,r)=>String(r.dayOfWeek)},Z:{key:"Z",format:(n,e,t)=>{let r=we(t);if(r.toUpperCase()==="UTC")return"UTC";let o=cl(e,r).formatToParts(n);for(let i=0,s=o.length;i<s;i++)if(o[i].type==="timeZoneName")return o[i].value;return"UTC"}},z:{key:"z",format:(n,e,t)=>er(n,t,{format:"basic"}),parseRegex:"[+-]\\d{2}(?::?\\d{2})?",parseField:"offset",parseNormalize:n=>n.replace(":","")},ms:{key:"ms",format:(n,e,t,r)=>String(r.ms).padStart(3,"0"),parseRegex:"\\d{3}",parseField:"ms",parseNormalize:n=>parseInt(n,10)},f:{key:"f",format:(n,e,t,r)=>String(r.ms).padStart(3,"0").padEnd(6,"0"),parseRegex:"\\d{1,9}",parseField:"ms",parseNormalize:n=>parseInt(n.padEnd(6,"0").slice(0,3),10)}},hl=Object.keys(Qn).concat("%").sort((n,e)=>e.length-n.length),rn=new RegExp("%("+hl.join("|")+")","g"),dl={"%F":"%Y-%m-%d","%T":"%H:%M:%S","%R":"%H:%M","%D":"%m/%d/%y"}});var te,at,an,Je,We,Et,Xe,It,ln=R(()=>{"use strict";te=class n{matches(e){if(e==null)return!1;if(e instanceof n)return!!(this.equals(e)||this.name.startsWith("Decimal")&&e.name.startsWith("Decimal")&&e.precision===void 0&&e.scale===void 0);if(typeof e=="function"){if(e.prototype instanceof n)return this instanceof e;try{let t=e();if(t instanceof n)return this.constructor===t.constructor}catch{}}return!1}get isNumeric(){return!1}get isInteger(){return!1}get isFloat(){return!1}get isSigned(){return!1}get isUnsigned(){return!1}get isTemporal(){return!1}get isNested(){return!1}get isBoolean(){return!1}get isString(){return!1}get isUtf8(){return!1}get isObject(){return!1}get isNull(){return!1}get isBinary(){return!1}},at=class extends te{get isNumeric(){return!0}},an=class extends at{get isInteger(){return!0}},Je=class extends an{get isSigned(){return!0}},We=class extends an{get isUnsigned(){return!0}},Et=class extends at{get isFloat(){return!0}},Xe=class extends te{get isTemporal(){return!0}},It=class extends te{get isNested(){return!0}}});var tr,Ki,nr,qi,rr,zi,or,un,ir,Gi,sr,Ji,ar,Wi,lr,Xi,lt,Hi,ut,cn,Be,ur,fn,cr,Rt,fr,Yi,mr,Zi,pr,Qi,hr,es,Ie,mn,dr,ts,he,ns,ct,rs,Ct,os,ft=R(()=>{"use strict";ln();q();tr=class extends Je{name="Int8";coerce(e){return se(e,{range:"Int8"})}equals(e){return e.name==="Int8"}allocate(e){return new Int8Array(e)}},Ki=new tr,nr=class extends Je{name="Int16";coerce(e){return se(e,{range:"Int16"})}equals(e){return e.name==="Int16"}allocate(e){return new Int16Array(e)}},qi=new nr,rr=class extends Je{name="Int32";coerce(e){return se(e,{range:"Int32"})}equals(e){return e.name==="Int32"}allocate(e){return new Int32Array(e)}},zi=new rr,or=class extends Je{name="Int64";coerce(e){return Oe(e,{truncate:!0})}equals(e){return e.name==="Int64"}allocate(e){return new BigInt64Array(e)}},un=new or,ir=class extends We{name="UInt8";coerce(e){return se(e,{range:"UInt8"})}equals(e){return e.name==="UInt8"}allocate(e){return new Uint8Array(e)}},Gi=new ir,sr=class extends We{name="UInt16";coerce(e){return se(e,{range:"UInt16"})}equals(e){return e.name==="UInt16"}allocate(e){return new Uint16Array(e)}},Ji=new sr,ar=class extends We{name="UInt32";coerce(e){return se(e,{range:"UInt32"})}equals(e){return e.name==="UInt32"}allocate(e){return new Uint32Array(e)}},Wi=new ar,lr=class extends We{name="UInt64";coerce(e){return Oe(e,{range:"UInt64"})}equals(e){return e.name==="UInt64"}allocate(e){return new BigUint64Array(e)}},Xi=new lr,lt=class extends Et{name="Float32";coerce(e){return Ln(e,{floatPrecision:"Float32"})}equals(e){return e.name==="Float32"}allocate(e){return new Float32Array(e)}},Hi=new lt,ut=class extends Et{name="Float64";coerce(e){return Ln(e,{floatPrecision:"Float64"})}equals(e){return e.name==="Float64"}allocate(e){return new Float64Array(e)}},cn=new ut,Be=class n extends at{constructor(t,r){super();this.precision=t;this.scale=r;this.name=t!==void 0&&r!==void 0?`Decimal(${t}, ${r})`:"Decimal"}precision;scale;name;coerce(t){return Kt(t,{precision:this.precision,scale:this.scale})}equals(t){return t instanceof n&&this.precision===t.precision&&this.scale===t.scale}allocate(t){return new Array(t).fill(null)}},ur=class extends te{name="Boolean";get isBoolean(){return!0}coerce(e){return e==null?null:!!e}equals(e){return e.name==="Boolean"}allocate(e){return new Array(e).fill(null)}},fn=new ur,cr=class extends te{name="Utf8";get isString(){return!0}get isUtf8(){return!0}coerce(e){return e==null?null:String(e)}equals(e){return e.name==="Utf8"}allocate(e){return new Array(e).fill(null)}},Rt=new cr,fr=class extends te{name="Binary";get isBinary(){return!0}coerce(e){return en(e)}equals(e){return e.name==="Binary"}allocate(e){return new Array(e).fill(null)}},Yi=new fr,mr=class extends te{name="Null";get isNull(){return!0}coerce(e){return null}equals(e){return e.name==="Null"}allocate(e){return new Array(e).fill(null)}},Zi=new mr,pr=class extends te{name="Object";get isObject(){return!0}coerce(e){return e===void 0?null:e}equals(e){return e.name==="Object"}allocate(e){return new Array(e).fill(null)}},Qi=new pr,hr=class extends Xe{name="Date";coerce(e){return J(e,{dateOnly:!0})}equals(e){return e.name==="Date"}allocate(e){return new Array(e).fill(null)}},es=new hr,Ie=class n extends Xe{name="Datetime";timeUnit;timeZone;constructor(e="ms",t=null){super(),this.timeUnit=e,this.timeZone=t}coerce(e){return J(e)}equals(e){return e instanceof n&&e.timeUnit===this.timeUnit&&e.timeZone===this.timeZone}allocate(e){return new Array(e).fill(null)}},mn=new Ie,dr=class extends Xe{name="Time";coerce(e){return on(e)}equals(e){return e.name==="Time"}allocate(e){return new Array(e).fill(null)}},ts=new dr,he=class n extends Xe{name="Duration";timeUnit;constructor(e="ms"){super(),this.timeUnit=e}coerce(e){return j(e)}equals(e){return e instanceof n&&e.timeUnit===this.timeUnit}allocate(e){return new Array(e).fill(null)}},ns=new he,ct=class n extends It{constructor(t){super();this.innerType=t}innerType;name="Array";coerce(t){if(t==null)return null;let r=k(t)?Array.from(t):[t],o=r.length,i=new Array(o);for(let s=0;s<o;s++)i[s]=this.innerType.coerce(r[s]);return i}equals(t){return t instanceof n&&this.innerType.equals(t.innerType)}allocate(t){return new Array(t).fill(null)}},rs=n=>new ct(n),Ct=class n extends It{constructor(t){super();this.fields=t}fields;name="Struct";coerce(t){if(!F(t))return null;let r={},o=Object.keys(this.fields),i=o.length;for(let s=0;s<i;s++){let a=o[s],l=this.fields[a];r[a]=l.coerce(t[a])}return r}equals(t){if(!(t instanceof n))return!1;let r=Object.keys(this.fields),o=Object.keys(t.fields);if(r.length!==o.length)return!1;for(let i=0;i<r.length;i++){let s=r[i];if(!this.fields[s].equals(t.fields[s]))return!1}return!0}allocate(t){return new Array(t).fill(null)}},os=n=>new Ct(n)});var E,Ce=R(()=>{"use strict";ln();ft();ft();ln();E={Int8:Ki,Int16:qi,Int32:zi,Int64:un,UInt8:Gi,UInt16:Ji,UInt32:Wi,UInt64:Xi,Float32:Hi,Float64:cn,Decimal:(n,e)=>new Be(n,e),Boolean:fn,Utf8:Rt,Binary:Yi,Date:es,Datetime:mn,Time:ts,Duration:ns,Object:Qi,Null:Zi,Array:rs,Struct:os}});function _l(n={}){let e=n.nullValue!==void 0?n.nullValue:"",t=$o(n.numericFormatOptions),r=n.replacerOptions||{},o=a=>n.datetimeFormat?Ge(a,{format:n.datetimeFormat}):n.dateFormat?Ge(a,{format:n.dateFormat}):n.timeFormat?Ge(a,{format:n.timeFormat}):a.toISOString(),i=ze({formatDate:o,...r}),s=typeof r.onBigInt=="function";return a=>{if(a==null||typeof a=="symbol"||typeof a=="function")return{str:e,isNumeric:!1};if(typeof a=="bigint"&&!s&&!r.voidBigIntReplacement)return{str:t(a),isNumeric:!0};let l=i.call(null,"",a),u=ie(l);return u==null||typeof u=="symbol"||typeof u=="function"?{str:e,isNumeric:!1}:typeof u=="string"?{str:u,isNumeric:!1}:typeof u=="number"||typeof u=="bigint"?{str:t(u),isNumeric:!0}:typeof u=="boolean"?{str:u?"true":"false",isNumeric:!1}:typeof u=="object"?{str:JSON.stringify(u,ze({formatDate:o,...r})),isNumeric:!1}:{str:String(u),isNumeric:!1}}}function hn(n,e,t={}){let{separator:r=",",quoteChar:o='"',includeHeader:i=!0,lineTerminator:s=`
2
- `,quoteStyle:a="necessary",includeBom:l=!1,onRow:u,...c}=t,f=Object.keys(n),m=f.length,h=[],p=!0,d=_l(c),g=(_,S=!1)=>{let b,x=!1;if(S)b=String(_);else{let w=d(_);b=w.str,x=w.isNumeric}if(a==="never")return b;if(a==="always"){let w=b.split(o).join(o+o);return o+w+o}if(a==="non_numeric"&&!x&&_!=null){let w=b.split(o).join(o+o);return o+w+o}if(b.includes(r)||b.includes(o)||b.includes(`
3
- `)||b.includes("\r")){let w=b.split(o).join(o+o);return o+w+o}return b},y=_=>{if(p){let S=l?"\uFEFF"+_:_;u?u(S):h.push(S),p=!1}else u?u(s+_):h.push(_)};if(i){let _=new Array(m);for(let S=0;S<m;S++)_[S]=g(f[S],!0);y(_.join(r))}for(let _=0;_<e;_++){let S=new Array(m);for(let b=0;b<m;b++)S[b]=g(n[f[b]][_],!1);y(S.join(r))}return u?l?"\uFEFF":"":h.join(s)}function is(n,e={}){let t=e.separator||",",r=e.quoteChar||'"',o=n;o.startsWith("\uFEFF")&&(o=o.substring("\uFEFF".length));let i=[],s=[],a="",l=!1,u=!1,c=!1,f=o.length;for(let m=0;m<f;m++){let h=o[m];if(l)u=!0,c=!1,h===r?m+1<f&&o[m+1]===r?(a+=r,m++):l=!1:a+=h;else if(h===r)u=!0,c=!1,l=!0;else if(h===t)s.push(a),a="",c=!0;else{let p=!1;h==="\r"?(p=!0,m+1<f&&o[m+1]===`
4
- `&&m++):h===`
5
- `&&(p=!0),p?(u||s.length>0||a!==""||c)&&(s.push(a),i.push(s),s=[],a="",u=!1,c=!1):(u=!0,c=!1,a+=h)}}return(u||s.length>0||a!==""||c)&&(s.push(a),i.push(s)),i}function ss(n,e={}){let t=new Set(e.nullValues??["","NA","null","NaN"]),r=n.length,o=!0,i=!0,s=!0,a=!0,l=!1;for(let c=0;c<r;c++){let f=n[c].trim();if(!t.has(f)){if(l=!0,o){let m=f.toLowerCase();m!=="true"&&m!=="false"&&m!=="1"&&m!=="0"&&(o=!1)}if(s&&Oe(f,{truncate:!1})===null&&(s=!1),i&&j(f,{allowNonFiniteNumbers:!0})===null&&(i=!1),a&&J(f)===null&&(a=!1),!o&&!i&&!s&&!a)break}}let u=new Array(r);if(!l||!o&&!i&&!s&&!a){for(let c=0;c<r;c++){let f=n[c];u[c]=t.has(f.trim())?null:f}return{type:Rt,values:u}}if(o){for(let c=0;c<r;c++){let f=n[c].trim();if(t.has(f))u[c]=null;else{let m=f.toLowerCase();u[c]=m==="true"||m==="1"}}return{type:fn,values:u}}if(s){for(let c=0;c<r;c++){let f=n[c].trim();u[c]=t.has(f)?null:Oe(f,{truncate:!1})}return{type:un,values:u}}if(i){for(let c=0;c<r;c++){let f=n[c].trim();u[c]=t.has(f)?null:j(f,{allowNonFiniteNumbers:!0})}return{type:cn,values:u}}if(a){for(let c=0;c<r;c++){let f=n[c].trim();u[c]=t.has(f)?null:J(f)}return{type:mn,values:u}}return{type:Rt,values:u}}var as=R(()=>{"use strict";Zt();Tt();Ue();Ce();ye()});function ls(n,e){return e==="us"?n*1e3:e==="ns"?n*1e6:n}var us=R(()=>{"use strict"});var q=R(()=>{"use strict";ye();Ue();Zt();Yt();At();Tt();as();Gn();us()});function Y(n,e,t,r=""){if(!(n in e))throw new Pe(n,`${t} "${n}" does not exist${r}`)}function yr(n,e){let t=Object.keys(n),r=t.length,o=e;for(let i=0;i<r;i++){let s=t[i],a=n[s],l=k(a)?a.length:0;if(o===void 0)o=l;else if(l!==o)throw new re(`Column height mismatch: Column "${s}" has length ${l}, but DataFrame height is ${o}`)}return o===void 0?0:o}function dn(n,e="Value cannot be null or undefined"){if(n==null)throw new M(e);return n}function Lu(n,e){if(!n)throw new M(e)}var cs=R(()=>{"use strict";X();q()});var Le,z,Pe,He,ne,re,M,je,X=R(()=>{"use strict";cs();Le=class extends Error{constructor(e){super(e),this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},z=class extends Le{},Pe=class extends z{constructor(e,t){super(t||`Column "${e}" does not exist in the DataFrame.`)}},He=class extends Le{},ne=class extends Le{},re=class extends Le{},M=class extends Le{},je=class extends Le{}});function xl(n,e,t){let r=new Map,o=t.length,i=new Array(o);for(let s=0;s<o;s++){let a=t[s];typeof a=="string"?(Y(a,n,"Partition key"," in the DataFrame."),i[s]=n[a]):i[s]=a.evaluate(n,e)}if(o===1){let s=i[0];for(let a=0;a<e;a++){let l=s[a],u=l==null?"":G(l),c=r.get(u);c===void 0&&(c=[],r.set(u,c)),c.push(a)}return r}for(let s=0;s<e;s++){let a=new Array(o);for(let c=0;c<o;c++){let f=i[c][s];a[c]=f==null?"":G(f)}let l=a.join(tt),u=r.get(l);u===void 0&&(u=[],r.set(l,u)),u.push(s)}return r}function fs(n,e,t){let r=new Array(t);if(t===0)return r;let o=n._partitionBy||[],i=xl(e,t,o),s=n._evaluatePre(n._partitionOpsIndex,e,t);for(let a of i.values()){let l=a.length,u=new Array(l);for(let c=0;c<l;c++)u[c]=s[a[c]];if(n._evaluateWindow){for(let c=0;c<l;c++)r[a[c]]=n._evaluateWindow(u,a,c);continue}if(n._aggFn){let c=n._aggFn(u);for(let f=0;f<l;f++)r[a[f]]=c;continue}for(let c=0;c<l;c++)r[a[c]]=s[a[c]]}return n._evaluatePost(n._partitionOpsIndex,r,e)}function ms(n){if(!Array.isArray(n)||n.length===0)return{columns:{},height:0};let e=n.length,t=new Set;for(let i=0;i<e;i++){let s=n[i];if(F(s)){let a=Object.keys(s);for(let l=0;l<a.length;l++)t.add(a[l])}}let r=Array.from(t),o={};for(let i=0;i<r.length;i++)o[r[i]]=new Array(e);for(let i=0;i<e;i++){let s=n[i]||{};for(let a=0;a<r.length;a++){let l=r[a],u=s[l];o[l][i]=u===void 0?null:u}}return{columns:o,height:e}}function ps(n,e){let t=Object.keys(n),r=new Array(e);for(let o=0;o<e;o++){let i={};for(let s=0;s<t.length;s++){let a=t[s],l=n[a][o];i[a]=l===void 0?null:l}r[o]=i}return r}function Xu(n,e,t){let r={};for(let o=0;o<t.length;o++){let i=t[o],s=n[i][e];r[i]=s===void 0?null:s}return r}function $e(n){if(n.length===0)return E.Utf8;let e=!0,t=!0,r=!0,o=!0,i=!0,s=!0,a=!0,l=!0,u=!1,c=!1,f=[];for(let m=0;m<n.length;m++){let h=n[m];if(h!=null){if(c=!0,h instanceof Uint8Array||(a=!1),!k(h)||h instanceof Uint8Array)s=!1;else{let p=h,d=p.length;for(let g=0;g<d;g++)f.push(p[g])}P(h)&&(u=!0),typeof h!="boolean"&&(e=!1),typeof h!="bigint"&&(o=!1),typeof h!="number"?(r=!1,t=!1):Number.isInteger(h)||(t=!1),!P(h)&&(typeof h!="string"||isNaN(Date.parse(h)))&&(i=!1),(!F(h)||h instanceof Uint8Array)&&(l=!1)}}if(!c)return E.Null;if(a)return E.Binary;if(s){let m=$e(f);return E.Array(m)}if(e)return E.Boolean;if(o)return E.Int64;if(r&&!t)return E.Float64;if(r&&t){let m=!0;for(let h=0;h<n.length;h++){let p=n[h];if(p!=null&&(p<-2147483648||p>2147483647)){m=!1;break}}return m?E.Int32:E.Float64}return i&&u?E.Datetime:l?E.Object:E.Utf8}function kt(n,e){let t=Object.keys(n),r=t.length,o=e.length,i={};for(let s=0;s<r;s++){let a=t[s],l=n[a],u=K(l)?new l.constructor(o):new Array(o);for(let c=0;c<o;c++)u[c]=l[e[c]];i[a]=u}return i}function Ve(n,e,t){let r=e.length;if(r===1)return G(n[e[0]][t]);let o=new Array(r);for(let i=0;i<r;i++)o[i]=G(n[e[i]][t]);return o.join(tt)}function Re(n,e,t){let r=e.allocate?e.allocate(t):new Array(t);if(K(r)){let i=r;for(let s=0;s<t;s++){let a=e.coerce(n[s]);if(a==null){let l=new Array(t);for(let u=0;u<s;u++)l[u]=i[u];l[s]=null;for(let u=s+1;u<t;u++)l[u]=e.coerce(n[u]);return l}i[s]=a}}else for(let i=0;i<t;i++)r[i]=e.coerce(n[i]);return r}function hs(n,e){if(n)if(typeof n=="string"){if(typeof Ze!="function")throw new je("File writing is not supported in this environment (missing require('fs')).");Ze("fs").writeFileSync(n,e,"utf8")}else if(F(n)&&typeof n.write=="function")n.write(e);else throw new M("Invalid file argument. Expected a file path string or a writable stream/object with a write method.")}function ds(n,e,t,r,o,i,s={}){let{how:a="inner",join_nulls:l=!1,maintain_order:u}=s,c=(w,D,O)=>{if(!l){for(let C=0;C<D.length;C++)if(w[D[C]][O]==null)return null}return Ve(w,D,O)};if(a==="cross")return ei(t,r);let f=new Map;for(let w=0;w<r;w++){let D=c(e,i,w);if(D===null)continue;let O=f.get(D);O===void 0&&(O=[],f.set(D,O)),O.push(w)}let m=[],h=[];if(a==="semi"||a==="anti"){for(let w=0;w<t;w++){let D=c(n,o,w),O=D===null?void 0:f.get(D),C=O!==void 0&&O.length>0;(a==="semi"&&C||a==="anti"&&!C)&&(m.push(w),h.push(null))}return{leftIndices:m,rightIndices:h}}let p=a==="outer"||a==="right",d=p?new Set:null;for(let w=0;w<t;w++){let D=c(n,o,w),O=D===null?void 0:f.get(D);if(O===void 0)(a==="left"||a==="outer")&&(m.push(w),h.push(null));else for(let C=0;C<O.length;C++){let N=O[C];p&&d.add(N),m.push(w),h.push(N)}}if(p)for(let w=0;w<r;w++)d.has(w)||(m.push(bt),h.push(w));let g=u||"none";if(g==="none"||g==="left")return{leftIndices:m,rightIndices:h};let y=m.length,_=new Int32Array(y);for(let w=0;w<y;w++)_[w]=w;let S=w=>m[w]===bt?Number.MAX_SAFE_INTEGER:m[w],b=w=>h[w]??Number.MAX_SAFE_INTEGER;g==="right"?_.sort((w,D)=>b(w)-b(D)||w-D):g==="left_right"?_.sort((w,D)=>S(w)-S(D)||b(w)-b(D)||w-D):g==="right_left"&&_.sort((w,D)=>b(w)-b(D)||S(w)-S(D)||w-D);let x=new Array(y),A=new Array(y);for(let w=0;w<y;w++){let D=_[w];x[w]=m[D],A[w]=h[D]}return{leftIndices:x,rightIndices:A}}function gs(n,e,t,r,o,i,s,a,l={}){let u=l.strategy??"backward",c=l.allow_exact_matches??!0,f=l.check_sorted??!0;Y(o,n,"Join on key"," in the left DataFrame."),Y(i,e,"Join on key"," in the right DataFrame.");let m=n[o],h=e[i];if(f){let x=(A,w,D,O)=>{for(let C=1;C<w;C++){let N=j(A[C-1]),H=j(A[C]);if(v(N)&&v(H)&&H<N)throw new M(`${O} DataFrame key column "${D}" is not sorted in ascending order at row ${C}.`)}};x(m,t,o,"left"),x(h,r,i,"right")}let p=s.length>0,d=new Map;if(p)for(let x=0;x<r;x++){let A=Ve(e,a,x),w=d.get(A);w||(w=[],d.set(A,w)),w.push(x)}let g=new Array(r);if(!p)for(let x=0;x<r;x++)g[x]=x;let y=new Array(t),_=new Array(t),S=(x,A)=>{let w=A.length;if(w===0)return null;let D=(W,le)=>j(h[le])??NaN;if(u==="backward"){let W=Xt(A,x,{side:c?"right":"left",getValue:D})-1;return W>=0?A[W]:null}if(u==="forward"){let W=Xt(A,x,{side:c?"left":"right",getValue:D});return W<w?A[W]:null}let O=Xt(A,x,{side:"right",getValue:D}),C=O-1,N=O;if(c||(C>=0&&D(C,A[C])===x&&C--,N<w&&D(N,A[N])===x&&N++),C<0)return N<w?A[N]:null;if(N>=w)return C>=0?A[C]:null;let H=D(C,A[C]),Z=D(N,A[N]);return Math.abs(x-H)<=Math.abs(x-Z)?A[C]:A[N]},b=l.tolerance!==void 0?j(l.tolerance):null;for(let x=0;x<t;x++){y[x]=x;let A=j(m[x]);if(!v(A)){_[x]=null;continue}let w=p?d.get(Ve(n,s,x))||[]:g;if(w.length===0){_[x]=null;continue}let D=S(A,w);if(D!==null&&b!==null){let O=j(h[D]);(!v(b)||!v(O)||Math.abs(A-O)>b)&&(D=null)}_[x]=D}return{leftIndices:y,rightIndices:_}}function _r(n,e,t,r,o,i,s,a,l={}){let[u="",c="_right"]=l.suffixes||[],f=l.coalesce??!0,m=l.how||"inner",h=o.length,p={},d={},g=new Set(s),y=new Set(a),_=(D,O)=>{let C=O!==""?O:"_left",N=`${D}${C}`,H=1;for(;x.has(N);)N=`${D}${C}_${H++}`;return x.add(N),N},S=(D,O,C=bt)=>{let N=O.length,H=new Array(N);for(let Z=0;Z<N;Z++){let W=O[Z];H[Z]=W!==null&&W!==C?D[W]:null}return H},b=new Map;for(let D=0;D<s.length;D++)b.has(s[D])||b.set(s[D],a[D]);let x=new Set,A=Object.keys(n),w=Object.keys(e);for(let D=0;D<A.length;D++){let O=A[D];(!(O in e)||g.has(O)||y.has(O))&&x.add(O)}for(let D=0;D<A.length;D++){let O=A[D],C=g.has(O),N;O in e&&!C&&!y.has(O)?u!==""?(x.add(O),N=_(O,u)):x.has(O)?N=_(O,u):(N=O,x.add(O)):N=O;let H=n[O],Z=C?b.get(O):null,W=Z?e[Z]:null;if(C&&f){let le=new Array(h);for(let fe=0;fe<h;fe++){let Ft=o[fe],Ye=i[fe],Vs=Ft!==bt?H[Ft]:null,$s=Ye!==null&&W?W[Ye]:null;le[fe]=Vs??$s}p[N]=le}else p[N]=S(H,o);t[O]?d[N]=t[O]:Z&&r[Z]&&(d[N]=r[Z])}if(m!=="semi"&&m!=="anti")for(let D=0;D<w.length;D++){let O=w[D];if(f&&y.has(O))continue;let C;x.has(O)?C=_(O,c):(C=O,x.add(O)),p[C]=S(e[O],i),r[O]&&(d[C]=r[O])}return L._createDirect(p,d,h)}var gn=R(()=>{"use strict";mt();Ce();xe();q();X()});function bl(n,e){if(n==null)return null;let t=P(n)?n.getTime():n;return e(t)}function ys(n,e,t){if(n==null||e==null)return null;let r=P(n)?n.getTime():n,o=P(e)?e.getTime():e;return t(r,o)}function de(n,e,t){return n._isWindow?fs(n,e,t):n.evaluate(e,t)}function pt(n,e,t){return typeof n=="object"&&n!==null&&"_ops"in n?de(n,e||{},t):typeof n=="string"&&e!=null&&n in e?e[n]:n}function ht(n,e,t,r){return!k(e)||e.length!==r?!1:typeof n=="object"&&n!==null&&"_ops"in n||typeof n=="string"&&t!=null&&n in t}var I,V,ue=R(()=>{"use strict";q();ye();gn();I=n=>e=>{let t=e.length,r=new Array(t);for(let o=0;o<t;o++)r[o]=bl(e[o],n);return r},V=(n,e,t)=>{let r=(o,i)=>{let s=o.length,a=n._resolve(e,i,s),l=new Array(s);if(k(a))for(let u=0;u<s;u++)l[u]=ys(o[u],a[u],t);else for(let u=0;u<s;u++)l[u]=ys(o[u],a,t);return l};return r._binaryMeta={left:n,right:e},r}});var T,$,ce=R(()=>{"use strict";X();ue();T=(n,e)=>{let t=n.constructor,r=n._colNames||n._colName||"",o=new t(r);return Object.assign(o,n),o._ops=e?[...n._ops,e]:[...n._ops],e&&e._binaryMeta&&(o._binaryMeta=e._binaryMeta),o},$=class n{_ops=[];_outputName="";_isLiteral;_literalValue;_aggFn=null;_castType;_binaryMeta;_groupingOpsIndex;_partitionOpsIndex;_partitionBy=null;_evaluateWindow;_baseExpr;_fieldName;_isUnnest;_evaluatePost(e,t,r){let o=this._ops,i=e!==void 0?e:o.length,s=t;for(let a=i;a<o.length;a++)s=o[a](s,r);return s}_evaluatePre(e,t,r){let o=this._getInitialValue(t,r),i=this._ops,s=e!==void 0?e:i.length;for(let a=0;a<s;a++)o=i[a](o,t);return o}_getInitialValue(e,t){let r=this._colName;if(r&&r!=="*"&&!r.startsWith("*")&&!(r in e))throw new Pe(r);return(r&&r!=="*"?e[r]:null)||new Array(t).fill(null)}_resolve(e,t,r){return e instanceof n?e._isLiteral&&e._ops.length===1?e._literalValue:de(e,t,r):e}alias(e){let t=T(this);return t._outputName=e,t}cast(e){let t=T(this,I(r=>e.coerce(r)));return t._castType=e,t}debug(e){return T(this,t=>(console.log(`[DEBUG] ${e?e+": ":""}`,t),t))}evaluate(e,t){return this._evaluatePre(void 0,e,t)}}});var yn,xr=R(()=>{"use strict";ce();ue();q();yn=class extends ${abs(){return T(this,I(Math.abs))}acos(){return T(this,I(e=>e<-1||e>1?null:Math.acos(e)))}acosh(){return T(this,I(e=>e<1?null:Math.acosh(e)))}add(e){return T(this,V(this,e,(t,r)=>t+r))}asin(){return T(this,I(e=>e<-1||e>1?null:Math.asin(e)))}asinh(){return T(this,I(Math.asinh))}atan(){return T(this,I(Math.atan))}atan2(e){return T(this,V(this,e,Math.atan2))}atanh(){return T(this,I(e=>e<=-1||e>=1?null:Math.atanh(e)))}cbrt(){return T(this,I(Math.cbrt))}ceil(){return T(this,I(Math.ceil))}clip(e=null,t=null){return T(this,I(r=>Ee(r,{min:e,max:t})))}copysign(e){return T(this,V(this,e,(t,r)=>Math.abs(t)*(r>=0?1:-1)))}cos(){return T(this,I(Math.cos))}cosh(){return T(this,I(Math.cosh))}degrees(){return T(this,I(e=>e*(180/Math.PI)))}div(e){return T(this,V(this,e,(t,r)=>r===0?null:t/r))}exp(){return T(this,I(Math.exp))}expm1(){return T(this,I(Math.expm1))}floor(){return T(this,I(Math.floor))}floordiv(e){return T(this,V(this,e,(t,r)=>r===0?null:Math.floor(t/r)))}hypot(e){return T(this,V(this,e,Math.hypot))}log(e=Math.E){return T(this,I(t=>t<=0?null:e===Math.E?Math.log(t):Math.log(t)/Math.log(e)))}log1p(){return T(this,I(e=>e<=-1?null:Math.log1p(e)))}mod(e){return T(this,V(this,e,(t,r)=>r===0?null:t%r))}mul(e){return T(this,V(this,e,(t,r)=>t*r))}negate(){return T(this,I(e=>-e))}pow(e){return T(this,V(this,e,Math.pow))}radians(){return T(this,I(e=>e*(Math.PI/180)))}rand(e,{min:t=0,max:r=1,integer:o=!1}={}){return T(this,i=>{let s=i.length,a=new Float64Array(s),l=e!==void 0?zo(e):Math.random,u=r-t;for(let c=0;c<s;c++){let f=l();a[c]=o?Math.floor(f*(u+1))+t:f*u+t}return a})}round(e=0){return T(this,I(t=>Vn(t,e)))}round_sig_figs(e){return T(this,I(t=>v(t)?Number(t.toPrecision(e)):t))}sign(){return T(this,I(Math.sign))}sin(){return T(this,I(Math.sin))}sinh(){return T(this,I(Math.sinh))}sqrt(){return T(this,I(e=>e<0?null:Math.sqrt(e)))}sub(e){return T(this,V(this,e,(t,r)=>t-r))}tan(){return T(this,I(Math.tan))}tanh(){return T(this,I(Math.tanh))}trunc(){return T(this,I(Math.trunc))}}});var _n,br=R(()=>{"use strict";ce();ue();q();_n=class extends ${and(e){return T(this,(t,r)=>{let o=t.length,i=this._resolve(e,r,o),s=k(i),a=new Array(o);for(let l=0;l<o;l++){let u=t[l],c=s?i[l]:i;u===!1||c===!1?a[l]=!1:u==null||c==null?a[l]=null:a[l]=!0}return a})}not(){return T(this,I(e=>!e))}or(e){return T(this,(t,r)=>{let o=t.length,i=this._resolve(e,r,o),s=k(i),a=new Array(o);for(let l=0;l<o;l++){let u=t[l],c=s?i[l]:i;u===!0||c===!0?a[l]=!0:u==null||c==null?a[l]=null:a[l]=!1}return a})}xor(e){return T(this,V(this,e,(t,r)=>!!t!=!!r))}}});function _s(n,e,t,r){let o=n.length,i=new Array(o);if(t&&typeof t=="object"&&"evaluate"in t){let s=t.evaluate(e,o);for(let a=0;a<o;a++){let l=n[a];if(l==null)i[a]=null;else{let u=s[a],c=new Set;if(k(u)){let m=u.length;for(let h=0;h<m;h++)c.add(G(u[h]))}else c.add(G(u));let f=c.has(G(l));i[a]=r?!f:f}}}else{let s=k(t)?t:[],a=new Set,l=s.length;for(let u=0;u<l;u++)a.add(G(s[u]));for(let u=0;u<o;u++){let c=n[u];if(c==null)i[u]=null;else{let f=a.has(G(c));i[u]=r?!f:f}}}return i}function xs(n,e){let{frequencies:t}=Fe(n,{strict:!0}),r=n.length,o=new Array(r);for(let i=0;i<r;i++){let s=t.get(n[i])||0;o[i]=e?s>1:s===1}return o}function bs(n,e,t){let r=n.length,o=new Array(r);if(k(e))for(let i=0;i<r;i++){let s=n[i],a=e[i];s==null&&a==null?o[i]=!t:s==null||a==null?o[i]=t:o[i]=t?s!==a:s===a}else for(let i=0;i<r;i++){let s=n[i];s==null&&e==null?o[i]=!t:s==null||e==null?o[i]=t:o[i]=t?s!==e:s===e}return o}var xn,wr=R(()=>{"use strict";ce();ue();q();xn=class extends ${between(e,t,r="both"){return T(this,(o,i)=>{let s=o.length,a=this._resolve(e,i,s),l=this._resolve(t,i,s),u=new Array(s),c=k(a),f=k(l);for(let m=0;m<s;m++){let h=o[m],p=c?a[m]:a,d=f?l[m]:l;if(h==null||p==null||d==null)u[m]=null;else{let g=r==="both"||r==="left"?h>=p:h>p,y=r==="both"||r==="right"?h<=d:h<d;u[m]=g&&y}}return u})}eq(e){return T(this,V(this,e,(t,r)=>t===r))}eq_missing(e){return T(this,(t,r)=>{let o=this._resolve(e,r,t.length);return bs(t,o,!1)})}ge(e){return T(this,V(this,e,(t,r)=>t>=r))}gt(e){return T(this,V(this,e,(t,r)=>t>r))}has_nulls(){return this._deriveAgg(e=>{for(let t=0;t<e.length;t++)if(e[t]==null)return!0;return!1})}is_close(e,{abs_tol:t=1e-8,rel_tol:r=1e-8,nans_equal:o=!1}={}){return T(this,(i,s)=>{let a=i.length,l=this._resolve(e,s,a),u=k(l),c=new Array(a);for(let f=0;f<a;f++){let m=i[f],h=u?l[f]:l;if(m==null||h==null)c[f]=null;else if(v(m)&&v(h)){let p=Math.abs(m-h),d=Math.max(r*Math.max(Math.abs(m),Math.abs(h)),t);c[f]=p<=d}else Number.isNaN(m)&&Number.isNaN(h)?c[f]=o:c[f]=m===h}return c})}is_duplicated(){return T(this,e=>xs(e,!0))}is_empty({ignoreNulls:e=!1}={}){return T(this,I(t=>typeof t=="string"?t.length===0:k(t)?e?Q(t,"nullish",{mode:"every"}):t.length===0:null))}is_finite(){return T(this,I(Number.isFinite))}is_in(e){return T(this,(t,r)=>_s(t,r,e,!1))}is_infinite(){return T(this,I(e=>e===1/0||e===-1/0))}is_nan(){return T(this,I(Number.isNaN))}is_not_nan(){return T(this,I(e=>!Number.isNaN(e)))}is_not_null(){return T(this,e=>{let t=e.length,r=new Array(t);for(let o=0;o<t;o++)r[o]=e[o]!=null;return r})}is_null(){return T(this,e=>{let t=e.length,r=new Array(t);for(let o=0;o<t;o++)r[o]=e[o]==null;return r})}is_unique(){return T(this,e=>xs(e,!1))}le(e){return T(this,V(this,e,(t,r)=>t<=r))}lt(e){return T(this,V(this,e,(t,r)=>t<r))}ne(e){return T(this,V(this,e,(t,r)=>t!==r))}ne_missing(e){return T(this,(t,r)=>{let o=this._resolve(e,r,t.length);return bs(t,o,!0)})}not_in(e){return T(this,(t,r)=>_s(t,r,e,!0))}}});var Ar,bn,Sr=R(()=>{"use strict";ce();ue();xe();q();Ar=class{constructor(e){this.expr=e}expr;_deriveString(e){return T(this.expr,I(t=>e(String(t))))}_patternGuard(e,t){return e==null?T(this.expr,r=>new Array(r.length).fill(null)):t()}_matchPattern(e,t){return t==null?!1:ge(t)?(t.lastIndex=0,t.test(e)):e.includes(t)}concat(e){return T(this.expr,V(this.expr,e,(t,r)=>String(t)+String(r)))}contains(e){return this._patternGuard(e,()=>this._deriveString(t=>this._matchPattern(t,e)))}contains_any(e){return this._patternGuard(e,()=>{let t=Array.isArray(e)?e:[e];return this._deriveString(r=>{let o=t.length;for(let i=0;i<o;i++)if(this._matchPattern(r,t[i]))return!0;return!1})})}count_matches(e,t={}){let r=typeof t=="boolean"?t:t?.literal??!1;return this._patternGuard(e,()=>this._deriveString(o=>{let i=r?pe(e):e,s=it(o,i,{global:!0});if(!s)return 0;let a=s.input.match(s.reg);return a?a.length:0}))}escape_regex(e={}){return this._deriveString(t=>pe(t,e))}decode(e){return this._deriveString(t=>_i(t,e.encoding,e))}encode(e){return this._deriveString(t=>yi(t,e.encoding))}decode_uri_component(){return this._deriveString(e=>{try{return decodeURIComponent(e)}catch{return e}})}encode_uri_component(){return this._deriveString(e=>{try{return encodeURIComponent(e)}catch{return e}})}ends_with(e){return this._deriveString(t=>t.endsWith(e))}explode(){return this._deriveString(e=>e.split(""))}extract(e,t){return this._patternGuard(e,()=>this._deriveString(r=>Wn(r,e,t)))}extract_all(e,t){return this._patternGuard(e,()=>this._deriveString(r=>Ai(r,e,t)??[]))}extract_groups(e,t={}){return this._patternGuard(e,()=>this._deriveString(r=>Si(r,e,t)))}extract_many(e,t={}){return this._patternGuard(e,()=>this._deriveString(r=>Ti(r,e,t)))}find(e,t={}){return this._patternGuard(e,()=>this._deriveString(r=>tn(r,e,t)))}find_many(e,t={}){return this._patternGuard(e,()=>this._deriveString(r=>Di(r,e,t)))}head(e=1){return this.slice(0,e)}join(e="",t={}){return T(this.expr,I(r=>{let o=be(r);return o==null?null:Gt(o,e,t)}))}json_decode(e={}){return this._deriveString(t=>St(t,e))}json_path_match(e){return this._deriveString(t=>ci(t,e))}len(){return this.len_chars()}len_bytes(){return this._deriveString(e=>Te.encode(e).length)}len_chars(){return this._deriveString(e=>e.length)}lower(){return this._deriveString(e=>e.toLowerCase())}lpad(e,t=" "){return this._deriveString(r=>r.padStart(e,t))}normalize(e){return this._deriveString(t=>t.normalize(e))}pad_end(e,t=" "){return this.rpad(e,t)}pad_start(e,t=" "){return this.lpad(e,t)}replace(e,t,r){return this._patternGuard(e,()=>this._deriveString(o=>Xn(o,e,t,{n:1,...r})??o))}replace_all(e,t,r){return this._patternGuard(e,()=>this._deriveString(o=>Xn(o,e,t,{...r,n:-1})??o))}replace_many(e,t,r){return this._patternGuard(e,()=>this._deriveString(o=>Ii(o,e,t,r)??o))}reverse(){return this._deriveString(e=>e.split("").reverse().join(""))}rpad(e,t=" "){return this._deriveString(r=>r.padEnd(e,t))}slice(e,t){return this._deriveString(r=>{let o=e<0?r.length+e:e,i=t!==void 0?o+t:void 0;return r.slice(o,i)})}split(e,t){return this._deriveString(r=>Oi(r,e,t))}starts_with(e){return this._deriveString(t=>t.startsWith(e))}strip_chars(e,t){return this._deriveString(r=>rt(r,e,{mode:"both",...t}))}strip_chars_end(e,t){return this._deriveString(r=>rt(r,e,{mode:"end",...t}))}strip_chars_start(e,t){return this._deriveString(r=>rt(r,e,{mode:"start",...t}))}strip_prefix(e){return this._deriveString(t=>rt(t,e,{mode:"start",maxScanStart:1,maxMatchesStart:1,returnStringOnNull:!0,stringOptions:{literal:!0}}))}strip_suffix(e){return this._deriveString(t=>rt(t,e,{mode:"end",maxScanEnd:1,maxMatchesEnd:1,returnStringOnNull:!0,stringOptions:{literal:!0}}))}tail(e=1){return this.slice(-e)}strptime(e){return this._deriveString(t=>Pi(t,e))}to_camelcase(){return this._deriveString(e=>ot(e,{format:"camel"}))}to_date(){return this._deriveString(e=>J(e,{dateOnly:!0}))}to_datetime(){return this._deriveString(J)}to_decimal(e,t){return this._deriveString(r=>Kt(r,{precision:e,scale:t}))}to_integer(){return this._deriveString(e=>se(e))}to_kebabcase(){return this._deriveString(e=>ot(e,{format:"kebab"}))}to_lowercase(){return this.lower()}to_pascalcase(){return this._deriveString(e=>ot(e,{format:"pascal"}))}to_snakecase(){return this._deriveString(e=>ot(e,{format:"snake"}))}to_time(){return this._deriveString(on)}to_titlecase(){return this._deriveString(e=>ot(e,{format:"title"}))}to_uppercase(){return this.upper()}trim(){return this.strip_chars()}trim_end(){return this.strip_chars_end()}trim_start(){return this.strip_chars_start()}upper(){return this._deriveString(e=>e.toUpperCase())}zfill(e){return this._deriveString(t=>t.padStart(e,"0"))}},bn=class extends ${get str(){return new Ar(this)}}});var wn,Tr=R(()=>{"use strict";ce();ue();X();q();wn=class extends ${_deriveAgg(e){let t=T(this);return t._aggFn=e,t._groupingOpsIndex=this._ops.length,t._partitionOpsIndex=this._ops.length,t}_deriveAggBinary(e,t){return T(this,V(this,e,(r,o)=>[r,o]))._deriveAgg(t)}all(){return this._deriveAgg(e=>Q(e,t=>!!t,{mode:"every"}))}all_null(){return this._deriveAgg(e=>Q(e,"nullish",{mode:"every"}))}any(){return this._deriveAgg(e=>Q(e,t=>!!t,{mode:"some"}))}any_null(){return this._deriveAgg(e=>Q(e,"nullish",{mode:"some"}))}arg_max(){return this._deriveAgg(e=>B(e).maxIdx)}arg_min(){return this._deriveAgg(e=>B(e).minIdx)}avg(){return this._deriveAgg(e=>B(e).mean)}bitwise_and(){return this._deriveAgg(e=>Ht(e,(t,r)=>t&r))}bitwise_or(){return this._deriveAgg(e=>Ht(e,(t,r)=>t|r))}bitwise_xor(){return this._deriveAgg(e=>Ht(e,(t,r)=>t^r))}corr(e){return this._deriveAggBinary(e,t=>$n(t)?.correlation??null)}count(e={}){return e.includeNulls?this._deriveAgg(t=>t.length):this._deriveAgg(t=>B(t).count)}cov(e){return this._deriveAggBinary(e,t=>$n(t)?.covariance??null)}dot(e){return this._deriveAggBinary(e,t=>Zo(t))}entropy(e={base:Math.E,normalize:!0}){return this._deriveAgg(t=>oi(t,e))}first(){return this._deriveAgg(e=>e[0]??null)}implode(){return this._deriveAgg(e=>e)}kurtosis(e={}){return this._deriveAgg(t=>ri(t,e))}last(){return this._deriveAgg(e=>e[e.length-1]??null)}max(){return this._deriveAgg(e=>B(e).max)}max_by(e){return this._deriveAggBinary(e,t=>Kn(t,"maxIdx"))}mean(){return this.avg()}median(){return this._deriveAgg(e=>nt(e))}min(){return this._deriveAgg(e=>B(e).min)}min_by(e){return this._deriveAggBinary(e,t=>Kn(t,"minIdx"))}mode(){return this._deriveAgg(e=>Wt(e))}n_unique(e={}){return this._deriveAgg(t=>Fe(t,e).count)}nan_max(){return this._deriveAgg(e=>B(e).nanMax)}nan_min(){return this._deriveAgg(e=>B(e).nanMin)}null_count(){return this._deriveAgg(e=>B(e).nullCount)}quantile(e){if(e<0||e>1)throw new ne("Quantile q must be between 0 and 1");return this._deriveAgg(t=>Jt(t,e))}product(){return this._deriveAgg(e=>B(e).product)}skew(e={}){return this._deriveAgg(t=>ni(t,e))}spearman_corr(e){return this._deriveAggBinary(e,t=>Yo(t))}std(){return this._deriveAgg(e=>B(e).std)}sum(){return this._deriveAgg(e=>B(e).sum)}variance(){return this._deriveAgg(e=>B(e).variance)}w_avg(e){return this._deriveAggBinary(e,t=>Qo(t))}}});function Dr(n,e,t={}){if(e==null)return null;let r=t.dense?"_denseRankCache":"_rankCache",o=n[r];if(!o){let i=n;if(t.ignoreNulls){i=[];let l=n.length;for(let u=0;u<l;u++)n[u]!=null&&i.push(n[u])}t.dense&&(i=Array.from(new Set(i)));let s=wt(i);o=new Map;let a=s.length;for(let l=0;l<a;l++){let u=s[l];o.has(u)||o.set(u,l+1)}n[r]=o}return o.get(e)??null}var An,Or=R(()=>{"use strict";ce();q();An=class extends ${_partitionBy=this._partitionBy||null;_window(e){let t=T(this);return t._partitionOpsIndex=this._ops.length,t._groupingOpsIndex=this._ops.length,t._evaluateWindow=e,t}_rolling(e,t){return this._window(function(r,o,i){let s=Math.max(0,i-e+1),a=i+1,l=r.slice(s,a);return t(l)})}_cum(e,t,r,o){return this._window(function(i,s,a){let l=t,u=!1,c=e?a:0,f=e?i.length-1:a;for(let m=c;m<=f;m++){let h=i[m];h!=null&&(l=r(l,h),u=!0)}return o?o(l,u):l})}get _isWindow(){return this._partitionBy!==null||this._evaluateWindow!==void 0||this._aggFn!==null}cum_count(e=!1){return this._cum(e,0,t=>t+1)}cum_max(e=!1){return this._cum(e,null,(t,r)=>t===null||r>t?r:t)}cum_min(e=!1){return this._cum(e,null,(t,r)=>t===null||r<t?r:t)}cum_prod(e=!1){return this._cum(e,1,(t,r)=>t*r,(t,r)=>r?t:null)}cum_sum(e=!1){return this._cum(e,0,(t,r)=>t+r)}dense_rank(){return this._window(function(e,t,r){return Dr(e,e[r],{dense:!0})})}lag(e=1,t=null){return this._window(function(r,o,i){let s=t;return i-e>=0&&(s=r[i-e]),s})}lead(e=1,t=null){return this._window(function(r,o,i){let s=t;return i+e<r.length&&(s=r[i+e]),s})}over(e){let t=T(this),r=Array.isArray(e)?e:[e];return t._partitionBy=r,t}rank(){return this._window(function(e,t,r){return Dr(e,e[r])})}rolling_max(e){return this._rolling(e,t=>B(t).max)}rolling_mean(e){return this._rolling(e,t=>B(t).mean)}rolling_median(e){return this._rolling(e,t=>nt(t))}rolling_min(e){return this._rolling(e,t=>B(t).min)}rolling_quantile(e,t){return this._rolling(t,r=>Jt(r,e))}rolling_rank(e){return this._rolling(e,t=>Dr(t,t[t.length-1],{ignoreNulls:!0}))}rolling_std(e){return this._rolling(e,t=>B(t).std)}rolling_sum(e){return this._rolling(e,t=>B(t).sum)}row_number(){let e=this._window(function(t,r,o){return o+1});return e._outputName="row_number",e}}});var Er,Sn,Ir=R(()=>{"use strict";ce();ue();q();Ae();X();Er=class{constructor(e){this.expr=e}expr;_deriveArray(e){return T(this.expr,I(t=>k(t)?e(t):null))}agg(e){return T(this.expr,(t,r)=>{let o=t.length,i=new Array(o),s=Object.create(r);for(let a=0;a<o;a++){let l=t[a];if(!k(l)){i[a]=null;continue}let u=l.length;s[Qe]=l;let c=de(e,s,u);i[a]=k(c)?c[0]??null:c}return i})}all(){return this._deriveArray(e=>Q(e,t=>!!t,{mode:"every"}))}any(){return this._deriveArray(e=>Q(e,t=>!!t,{mode:"some"}))}arg_max(){return this._deriveArray(e=>B(e).maxIdx)}arg_min(){return this._deriveArray(e=>B(e).minIdx)}contains(e){return this._deriveArray(t=>Array.prototype.includes.call(t,e))}contains_all(e){return this._deriveArray(t=>Q(e,r=>Array.prototype.includes.call(t,r),{mode:"every"}))}contains_any(e){return this._deriveArray(t=>Q(e,r=>Array.prototype.includes.call(t,r),{mode:"some"}))}count_matches(e,t={}){return this._deriveArray(r=>Fe(r,t).frequencies.get(e)??0)}filter(e){return T(this.expr,(t,r)=>{let o=t.length,i=new Array(o),s=Object.create(r);for(let a=0;a<o;a++){let l=t[a];if(!k(l)){i[a]=null;continue}let u=l.length;s[Qe]=l;let c=de(e,s,u),f=[];if(k(c)){let m=Math.min(u,c.length);for(let h=0;h<m;h++)c[h]&&f.push(l[h])}else if(c)for(let m=0;m<u;m++)f.push(l[m]);i[a]=f}return i})}explode({empty_as_null:e=!0,keep_nulls:t=!0}={}){return T(this.expr,r=>{let o=r.length,i=0;for(let u=0;u<o;u++){let c=r[u];if(k(c)){i+=c.length||(e?1:0);continue}if(c!=null){i+=1;continue}t&&(i+=1)}let s=new Array(i),a=new Int32Array(i),l=0;for(let u=0;u<o;u++){let c=r[u];if(k(c)){let f=c.length;if(f>0){for(let m=0;m<f;m++)a[l]=u,s[l++]=c[m];continue}e&&(a[l]=u,s[l++]=null);continue}if(c!=null){a[l]=u,s[l++]=c;continue}t&&(a[l]=u,s[l++]=null)}return s.rowMap=a,s})}first(e=!0){return this.get(0,e)}gather(e,t=!0){return this._deriveArray(r=>{let o=typeof e=="number"?[e]:e,i=o.length,s=new Array(i);for(let a=0;a<i;a++)s[a]=qt(r,o[a],t);return s})}gather_every(e={}){return this._deriveArray(t=>zt(t,e))}get(e,t=!0){return this._deriveArray(r=>qt(r,e,t))}join(e=",",t={}){return this._deriveArray(r=>Gt(r,e,t))}last(e=!0){return this.get(-1,e)}len(){return this.lengths()}lengths(){return this._deriveArray(e=>e.length)}max(){return this._deriveArray(e=>B(e).max)}mean(){return this._deriveArray(e=>B(e).mean)}median(){return this._deriveArray(e=>nt(e))}min(){return this._deriveArray(e=>B(e).min)}mode(){return this._deriveArray(e=>Wt(e))}n_unique(e={}){return this._deriveArray(t=>Fe(t,e).count)}reverse(){return this._deriveArray(e=>e.slice().reverse())}shift(e=1){return this._deriveArray(t=>Ho(t,e))}slice(e,t){return this._deriveArray(r=>r.slice(e,t))}splice(e,t,...r){return this._deriveArray(o=>{let i=[...o];return i.splice(e,t??i.length,...r),i})}sort(e){return this._deriveArray(t=>wt(t,e))}std(){return this._deriveArray(e=>B(e).std)}sum(){return this._deriveArray(e=>B(e).sum)}to_struct({upper_bound:e,fields:t}={}){return T(this.expr,r=>{let o=r.length,i=new Array(o),s=0;if(Array.isArray(t))s=t.length;else if(typeof e=="number")s=e;else for(let l=0;l<o;l++){let u=r[l];k(u)&&u.length>s&&(s=u.length)}if(s===0)throw new ne("to_struct cannot be evaluated: struct width is 0. Provide an upper_bound, non-empty fields names, or non-empty lists.");let a=new Array(s);for(let l=0;l<s;l++)typeof t=="function"?a[l]=t(l):a[l]=(Array.isArray(t)?t[l]:null)??`field_${l}`;for(let l=0;l<o;l++){let u=r[l];if(!k(u)){i[l]=null;continue}let c={};for(let f=0;f<s;f++)c[a[f]]=qt(u,f,!0);i[l]=c}return i})}unique(e={}){return this._deriveArray(t=>Fe(t,e).values)}variance(){return this._deriveArray(e=>B(e).variance)}eval(e){return T(this.expr,(t,r)=>{let o=t.length,i=new Array(o);for(let s=0;s<o;s++){let a=t[s];if(!k(a)){i[s]=null;continue}let l=a.length,u={...r,[Qe]:a};if(e._aggFn!=null&&(e._partitionBy==null||e._partitionBy.length===0)){let f=e._groupingOpsIndex!==void 0?e._groupingOpsIndex:e._ops.length,m=e._evaluatePre(f,u,l),h=e._aggFn(Array.from(m));i[s]=e._evaluatePost(f,[h],u)}else i[s]=de(e,u,l)}return i})}},Sn=class extends ${get arr(){return new Er(this)}}});function ws(n){return dn(n,"Column reference cannot be null or undefined."),Tn||(Tn=(me(),$r(As)).ColumnExpr),Tn.isColExpr(n)?n:new Tn(n)}var Tn,Cr,Dn,Rr=R(()=>{"use strict";ce();X();Tn=null;Cr=class{constructor(e){this.expr=e;return new Proxy(this,{get(t,r,o){return r in t?Reflect.get(t,r,o):typeof r=="string"?t.field(r):Reflect.get(t,r,o)}})}expr;field(e){let t=T(this.expr,r=>{let o=r.length,i=new Array(o);for(let s=0;s<o;s++){let a=r[s];i[s]=a!=null&&typeof a=="object"?a[e]:null}return i});return t._baseExpr=this.expr,t._fieldName=e,t.alias(e)}rename_fields(e){return T(this.expr,t=>{let r=t.length,o=new Array(r),i=Object.keys(e),s=i.length;for(let a=0;a<r;a++){let l=t[a];if(l==null||typeof l!="object"){o[a]=null;continue}let u={},c=Object.keys(l),f=c.length;for(let m=0;m<f;m++){let h=c[m];u[h]=l[h]}for(let m=0;m<s;m++){let h=i[m];if(h in u){let p=e[h];u[p]=u[h],delete u[h]}}o[a]=u}return o})}with_fields(e){return T(this.expr,(t,r)=>{let o=t.length,i=new Array(o),s=[];if(Array.isArray(e)){let u=e.length;for(let c=0;c<u;c++){let f=e[c],m=ws(f),h=m._outputName||m._colName;if(!h)throw new M("Expressions passed to struct.with_fields must have a name/alias.");s.push({name:h,expr:m})}}else if(e&&typeof e=="object"){let u=Object.keys(e),c=u.length;for(let f=0;f<c;f++){let m=u[f],h=ws(e[m]);s.push({name:m,expr:h})}}let a=s.length,l=new Array(a);for(let u=0;u<a;u++)l[u]=s[u].expr.evaluate(r,o);for(let u=0;u<o;u++){let c=t[u];if(c==null||typeof c!="object"){i[u]=null;continue}let f={},m=Object.keys(c),h=m.length;for(let p=0;p<h;p++){let d=m[p];f[d]=c[d]}for(let p=0;p<a;p++)f[s[p].name]=l[p][u];i[u]=f}return i})}unnest(){let e=T(this.expr);return e._isUnnest=!0,e._baseExpr=this.expr,e}},Dn=class extends ${get struct(){return new Cr(this)}}});var On,Ss=R(()=>{"use strict";ce();q();X();On=class extends ${fill_null({value:e=void 0,strategy:t=void 0,limit:r=void 0}={}){return T(this,(o,i)=>{let s=o.length,a=Array.from(o);if(t!==void 0)if(t==="zero"||t==="one"||t==="min"||t==="max"||t==="mean"){let l;t==="zero"?l=0:t==="one"?l=1:l=B(o)[t],qe(a,l,{mode:"constant",condition:u=>u==null})}else if(t==="forward"||t==="backward"){let l=t==="forward",u=null,c=0;qe(a,null,{mode:"independent",reverse:!l,step:({originalValue:f})=>f!=null?(u=f,c=0,f):u!==null&&(r===void 0||c<r)?(c++,u):null})}else throw new M(`Unsupported fill_null strategy: "${t}"`);else{let l=this._resolve(e,i,s),u=k(l);qe(a,null,{mode:"independent",step:({index:c,originalValue:f})=>f??(u?l[c]:l)})}return a})}reverse(){return T(this,e=>e.slice().reverse())}}});var As={};Vr(As,{ColumnExpr:()=>U,resolveColumnSelectors:()=>Ke});function wl(n,e){for(let t of e)for(let r of Object.getOwnPropertyNames(t.prototype))r!=="constructor"&&Object.defineProperty(n.prototype,r,Object.getOwnPropertyDescriptor(t.prototype,r)||Object.create(null))}function Al(n,e,t,r){if(!(n instanceof U)){if(F(n)&&"evaluate"in n&&!n._colName){let o=[];for(let i=0;i<e.length;i++)t.has(e[i])||o.push(e[i]);return o}return null}if(n._colNames&&n._colNames.length>0)return n._colNames;if(n._colName==="*"){let o=new Set(n._excludedCols),i=[];for(let s=0;s<e.length;s++){let a=e[s];!o.has(a)&&!t.has(a)&&i.push(a)}return i}if(n._targetType||n._targetTypes&&n._targetTypes.length>0){if(!r)throw new He("Cannot resolve DataType column selector without DataFrame schema.");let o=[];for(let i=0;i<e.length;i++){let s=e[i];if(t.has(s))continue;let a=r[s];if(a){if(n._targetType)a.matches(n._targetType)&&o.push(s);else if(n._targetTypes){for(let l=0;l<n._targetTypes.length;l++)if(a.matches(n._targetTypes[l])){o.push(s);break}}}}return o}return null}function Ke(n,e,t,r,o){let i=[],s=t?new Set(t):new Set;for(let a=0;a<n.length;a++){let l=n[a];if(typeof l=="string"){i.push(new U(l));continue}if(F(l)&&l._isUnnest&&l._baseExpr){let c=l._baseExpr,f=[],m=l._colName;if(typeof m=="string"&&r&&r[m]&&r[m].name==="Struct"&&(f=Object.keys(r[m].fields)),f.length===0&&o){let d=Object.keys(o)[0],g=d?o[d].length:0,y=c.evaluate(o,g),_=y.length;for(let S=0;S<_;S++){let b=y[S];if(b!=null&&typeof b=="object"){f=Object.keys(b);break}}}let h=f.length;if(h>0){for(let p=0;p<h;p++){let d=f[p],g=c.struct.field(d);i.push(g)}continue}}let u=Al(l,e,s,r);if(u!==null)for(let c=0;c<u.length;c++){let f=new U(u[c]);f._ops=[...l._ops||[]],f._aggFn=l._aggFn,f._partitionOpsIndex=l._partitionOpsIndex,f._groupingOpsIndex=l._groupingOpsIndex,f._partitionBy=l._partitionBy,l._evaluateWindow&&(f._evaluateWindow=l._evaluateWindow),l._outputName&&l._outputName!=="*"&&(f._outputName=l._outputName),i.push(f)}else i.push(l)}return i}var U,me=R(()=>{"use strict";ce();xr();wr();Tr();Or();Sr();br();kr();Ir();Rr();Ss();q();Ce();X();U=class n extends ${_colName="";_colNames;_excludedCols=[];_targetType;_targetTypes;static isColExpr(e){if(!F(e))return!1;try{return"evaluate"in e&&typeof e.evaluate=="function"}catch{return!1}}static toColExpr(e){return dn(e,"Column reference cannot be null or undefined."),n.isColExpr(e)?e:new n(e)}constructor(e){super(),Array.isArray(e)?e.some(r=>r instanceof te||typeof r=="function")?this._targetTypes=e:this._colNames=e.map(String):e instanceof te||typeof e=="function"?this._targetType=e:(this._colName=String(e),this._outputName=this._colName)}};wl(U,[yn,xn,wn,An,bn,_n,En,Sn,Dn,On])});function dt(n,e={strict:!0}){let t=e,r=new U(Kr);return r._literalValue=n,t.name&&(r._outputName=t.name),r._ops.push(o=>{let i=o.length,s=(x,A)=>x===void 0?A:Ee(x<0?i+x:x,{min:0,max:i}),a=s(t.startIndex,0),l=s(t.endIndex,i),u=Math.max(0,l-a),c=t.n!==void 0?t.n:u,f=t.strict!==!1;if(f){if(c!==i)throw new re(`Column height mismatch: seq_range length ${c} does not match DataFrame height ${i}`)}else{let x=t.pad??!1,A=t.truncate??!1;if(x&&!A&&c>u)throw new re(`Cannot pad seq_range output: specified length ${c} starting at index ${a} exceeds slice width ${u} (requires truncation).`);if(A&&!x&&c<u)throw new re(`Cannot truncate seq_range output: specified length ${c} starting at index ${a} is less than slice width ${u} (requires padding).`)}let m=i,h=!!t.dtype,p=t.mode||"cumulative",d=t.step!==void 0?t.step:1,g=h?x=>t.dtype.coerce(x):x=>x;if(f){let x=t.dtype?.allocate?t.dtype.allocate(m):new Array(m);return qe(x,n,{mode:p,step:d,coerce:g,startIndex:0,endIndex:m}),x}let y=Math.min(a+c,l),_=t.padValue!==void 0?t.padValue:null,S=g(_);if(p==="constant"&&a===0&&y===m&&!t.dtype){let x=new Array(m);for(let A=0;A<m;A++)x[A]=n;return x}let b=new Array(m);return b.fill(S),qe(b,n,{mode:p,step:d,coerce:g,startIndex:a,endIndex:y}),b}),r}var Nr=R(()=>{"use strict";me();Ae();X();q()});function gt(n,e){let t=dt(n,{strict:!0,mode:"constant",dtype:e?.dtype,name:e?.name});return t._isLiteral=!0,t}var In=R(()=>{"use strict";Nr()});var Ts={};Vr(Ts,{duration:()=>Mr});function Mr(n={}){let e=n.timeUnit??"ms",t=[],r=[[n.weeks,co],[n.days,Me],[n.hours,_t],[n.minutes,_e],[n.seconds,et],[n.milliseconds,fo],[n.microseconds,mo],[n.nanoseconds,po]];for(let[i,s]of r)if(i!=null){let a=v(i)?gt(i):U.toColExpr(i);t.push({expr:a,multiplier:s})}if(t.length===0)throw new M("At least one duration component must be specified for $df.duration().");let o=new U(Gr);return o._castType=new he(e),o._ops.push((i,s)=>{let a=i?i.length:0;if(a===0&&s){let f=Object.keys(s)[0];f&&k(s[f])&&(a=s[f].length)}a===0&&(a=1);let l=new Float64Array(a),u=new Uint8Array(a);for(let f=0;f<t.length;f++){let{expr:m,multiplier:h}=t[f],p=de(m,s,a);if(k(p)){let d=p,g=d.length;for(let y=0;y<a;y++){if(u[y]===1)continue;let _=j(y<g?d[y]:g===1?d[0]:null);_!=null?l[y]+=_*h:(u[y]=1,l[y]=0)}}else{let d=j(p);if(d!=null){let g=d*h;for(let y=0;y<a;y++)u[y]!==1&&(l[y]+=g)}else{u.fill(1),l.fill(0);break}}}let c=new Array(a);for(let f=0;f<a;f++)if(u[f]===1)c[f]=null;else{let m=Math.round(l[f]*1e6)/1e6;c[f]=ls(m,e)}return c}),o.alias("duration")}var Ur=R(()=>{"use strict";me();In();Ae();ue();ft();X();q();xe()});var vr,En,kr=R(()=>{"use strict";ft();X();ce();ue();q();xe();vr=class{constructor(e){this.expr=e}expr;_colTz(){let e=this.expr._castType;return e instanceof Ie?e.timeZone:null}_colTu(){let e=this.expr._castType;return e instanceof Ie?e.timeUnit:null}_deriveDate(e){return T(this.expr,I(t=>{let r=J(t);return r?e(r):null}))}cast_time_unit(e){return this.expr.cast(new Ie(e,this._colTz()))}century(){return this._deriveDate(vi)}convert_time_zone(e){let t=this._colTz();if(this.expr._castType instanceof Ie&&t===null)throw new M('convert_time_zone() requires a timezone-aware Datetime column. Use .dt.replace({ timeZone: "..." }) to assign a timezone first.');return this.expr.cast(new Ie(this._colTu()??"ms",e))}date(){return this._deriveDate(e=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())))}day(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).day)}days_in_month(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>{let o=ae(r,t),i=sn(ee(o.year,o.month-1,1),1,0);return i?i.getUTCDate():null})}epoch(e="ms"){return this._deriveDate(t=>Ui(t,e))}hour(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).hour)}is_business_day(e={}){return this._deriveDate(t=>Vi(t,e))}is_leap_year(){return this._deriveDate(Zn)}iso_week(){return this._deriveDate(e=>Hn(e,{field:"week"}))}iso_year(){return this._deriveDate(e=>Hn(e,{field:"year"}))}microsecond(){return this.millisecond().mul(vn)}millennium(){return this._deriveDate(Fi)}millisecond(){return this._deriveDate(e=>e.getUTCMilliseconds())}minute(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).minute)}month(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).month)}month_end(){return this._deriveDate(e=>sn(e,1,0))}month_start(){return this._deriveDate(e=>sn(e,0,1))}nanosecond(){return this.millisecond().mul(Fn)}offset_day(e,t={}){let o=t?.excludeWeekdays?.length||t?.holidays||t?.roll?T(this.expr,V(this.expr,e,(s,a)=>{let l=J(s);return l?Li(l,a,t):null})):e,{duration:i}=(Ur(),$r(Ts));return this.expr.add(i({days:o}))}ordinal_day(){return this._deriveDate(Yn)}quarter(){return this._deriveDate(ji)}replace(e){return T(this.expr,I(t=>{let r=J(t);return r?$i(r,e):null}))}second(){return this._deriveDate(e=>e.getUTCSeconds())}strftime(e){let t=this._colTz(),r=t&&!e.timeZone?{...e,timeZone:t}:e;return this._deriveDate(o=>Ge(o,r))}time(){return this._deriveDate(e=>e.toISOString().split("T")[1].slice(0,12))}timestamp(e="ms"){return this.epoch(e)}total_days(){return this.expr.div(Me)}total_hours(){return this.expr.div(_t)}total_microseconds(){return this.expr.mul(vn)}total_milliseconds(){return this.expr}total_minutes(){return this.expr.div(_e)}total_nanoseconds(){return this.expr.mul(Fn)}total_seconds(){return this.expr.div(et)}utc_offset(e,t={}){return T(this.expr,I(r=>{let o=J(r);return o?er(o,e,t):null}))}week(){return this.iso_week()}weekday(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).dayOfWeek||7)}year(e){let t=e||this._colTz()||"UTC";return this._deriveDate(r=>ae(r,t).year)}},En=class extends ${get dt(){return new vr(this)}}});function Nt(){return new U("*")}var Ds=R(()=>{"use strict";me()});function Os(n){let e=new U("*");return e._excludedCols=Array.isArray(n)?n:[n],e}var Es=R(()=>{"use strict";me()});function Is(...n){let e=n.length===1&&Array.isArray(n[0])?n[0]:n,t=new U(qr);return t._ops.push((r,o)=>{let i=r.length,s=e.length,a=new Array(s),l=new Array(s);for(let c=0;c<s;c++){let f=e[c],m=pt(f,o,i);a[c]=m,l[c]=ht(f,m,o,i)}let u=new Array(i);for(let c=0;c<i;c++){let f=null;for(let m=0;m<s;m++){let h=a[m],p=l[m]?h[c]:h;if(p!=null){f=p;break}}u[c]=f}return u}),t}var Cs=R(()=>{"use strict";me();ue();Ae()});function Rs(n){return new jr(n)}var Fr,jr,Cn,ks=R(()=>{"use strict";me();ue();Ae();Fr=class{_predicates;_values;constructor(e,t){this._predicates=e,this._values=t}then(e){return new Cn(this._predicates,this._values.concat(e))}},jr=class{_predicates;constructor(e){this._predicates=[e]}then(e){return new Cn(this._predicates,[e])}},Cn=class n extends U{_predicates;_values;_otherwise;get _otherwiseValue(){return this._otherwise}get _branchOperands(){return this._otherwise!=null?[...this._values,this._otherwise]:this._values}constructor(e=[],t=[],r=null){super(Jr),this._predicates=Array.isArray(e)?e:[],this._values=t||[],this._otherwise=r,this._ops=[(o,i)=>{let s=o.length,a=this._predicates,l=this._values,u=a.length,c=new Array(u),f=new Array(u),m=new Array(u),h=new Array(u);for(let _=0;_<u;_++){let S=a[_],b=l[_],x=pt(S,i,s),A=pt(b,i,s);c[_]=x,f[_]=A,m[_]=ht(S,x,i,s),h[_]=ht(b,A,i,s)}let p=this._otherwise,d=pt(p,i,s),g=ht(p,d,i,s),y=new Array(s);for(let _=0;_<s;_++){let S=!1;for(let b=0;b<u;b++)if((m[b]?c[b][_]:c[b])===!0){y[_]=h[b]?f[b][_]:f[b],S=!0;break}S||(y[_]=g?d[_]:d)}return y}]}when(e){return new Fr(this._predicates.concat(e),this._values)}otherwise(e){return new n(this._predicates,this._values,e)}}});function Ns(n){return U.toColExpr(n).implode()}var Ms=R(()=>{"use strict";me()});function Us(){return new U(Qe)}var vs=R(()=>{"use strict";me();Ae()});function Fs(n,...e){let t;Array.isArray(n)||n&&typeof n=="object"&&!U.isColExpr(n)?t=n:t=[n,...e];let r=gt({}).struct.with_fields(t);return delete r._isLiteral,delete r._literalValue,r._colName=zr,r.alias("struct")}var js=R(()=>{"use strict";me();In();Ae()});function yt(n,e){if(n==null)return;if(n instanceof te)return n;if(typeof n=="object"&&("_ops"in n||"_literalValue"in n||"_targetType"in n))return Mt(n,e);let t=ie(n);if(typeof t=="string")return e[t]??E.Utf8;if(typeof t=="boolean")return E.Boolean;if(typeof t=="bigint")return $t(t,{range:"Int64"})?E.Int64:E.UInt64;if(v(t))return De(t,{range:"Int32"})?E.Int32:Number.isInteger(t)?E.Int64:E.Float64;if(P(t))return E.Datetime;if(zn(t,{strict:!0}))return E.Binary;if(Array.isArray(t)){let r,o=t.length;for(let i=0;i<o;i++){let s=t[i];if(s!=null&&(r=yt(s,e)))break}return E.Array(r??E.Utf8)}if(K(t)){let r=ke?ke.call(t):t.constructor.name,o=Sl[r];return o?E.Array(o):E.Binary}if(F(t))return E.Object}function Bs(n,e,t){if(!n||!e)return;if(t&&t.length>0){let a=!1;for(let l=0;l<t.length;l++){let u=t[l];if(u!=null){if(typeof u!="boolean"){a=!1;break}a=!0}}if(a)return E.Boolean}let r=n instanceof he,o=e instanceof he,i=n.isTemporal&&!r,s=e.isTemporal&&!o;if(i||s){if(i&&s){let a=n.timeUnit||e.timeUnit||"ms";return new he(a)}return i?n:e}if(r||o)return r?n:e;if(n.isUtf8||e.isUtf8)return E.Utf8;if(n.isNumeric&&e.isNumeric){let a=n instanceof ut||e instanceof ut,l=n instanceof lt||e instanceof lt,u=n instanceof Be||e instanceof Be;if(a||l&&u)return E.Float64;if(l)return E.Float32;if(u)return n instanceof Be?n:e;if(t!==void 0){let m={range:{min:-1/0,max:1/0}},h=t.length;for(let p=0;p<h;p++){let d=t[p];if(v(d)&&!De(d,m))return E.Float64}}if(n===e)return n;let c=n.name,f=e.name;return c.endsWith("64")||f.endsWith("64")?E.Int64:c.endsWith("32")||f.endsWith("32")?c==="UInt32"&&f==="UInt32"?E.UInt32:E.Int32:c.endsWith("16")||f.endsWith("16")?c==="UInt16"&&f==="UInt16"?E.UInt16:E.Int16:c==="UInt8"&&f==="UInt8"?E.UInt8:E.Int8}}function Mt(n,e,t){if(!n)return;if(n._castType)return n._castType;if(n._targetType instanceof te)return n._targetType;if(n._isLiteral&&n._literalValue!==void 0)return yt(n._literalValue,e);if(n._binaryMeta)return Bs(yt(n._binaryMeta.left,e),yt(n._binaryMeta.right,e),t);if(n._branchOperands){let s,a=n._branchOperands.length;for(let l=0;l<a;l++){let u=yt(n._branchOperands[l],e);u&&(s?s!==u&&s.isNumeric&&u.isNumeric&&(s=Bs(s,u,t)??s):s=u)}if(s)return s}if(n._baseExpr&&n._fieldName){let s=yt(n._baseExpr,e);if(s instanceof Ct)return s.fields?.[n._fieldName]}let r=n._colName?e[n._colName]:void 0,o=t?.[0],i=(!n._ops||n._ops.length===0)&&!n._aggFn;if(r){if(r instanceof ct&&(n._isUnnest||t?.rowMap))return r.innerType;if(!(r instanceof ct)&&Array.isArray(o))return E.Array(r);if(i||r.isTemporal&&n._aggFn&&(P(o)||typeof o=="string")||r instanceof he&&n._aggFn&&v(o))return r}if(n._aggFn&&v(o))return!Number.isInteger(o)||r?.isNumeric&&!(r instanceof he)?E.Float64:E.Int32}var Sl,Ps=R(()=>{"use strict";ft();Ce();q();Sl={Float64Array:E.Float64,Float32Array:E.Float32,Int32Array:E.Int32,Int16Array:E.Int16,Int8Array:E.Int8,BigInt64Array:E.Int64,BigUint64Array:E.UInt64,BigUint64:E.UInt64,Uint32Array:E.UInt32,Uint16Array:E.UInt16}});var Ut=R(()=>{"use strict";Ae();Wr();ce();xr();br();wr();Sr();Tr();Or();kr();Ir();Rr();me();In();Ds();Es();Cs();ks();Ms();Nr();vs();js();Ur();Ps();ue()});var Rn,Ls=R(()=>{"use strict";mt();gn();Ut();Rn=class{_groups;_keys;_allKeys;_parentColumns;_parentHeight;_parentSchema;constructor(e,t,r,o,i,s){this._groups=e,this._keys=t,this._allKeys=r,this._parentColumns=o,this._parentHeight=i,this._parentSchema=s}to_dataframe(){let e=this._keys.length,t=new Array(e);for(let a=0;a<e;a++)t[a]=String(this._keys[a]);let r=this._groups.size,o={};for(let a=0;a<t.length;a++)o[t[a]]=new Array(r);let i=0;for(let a of this._groups.values()){if(a.length===0)continue;let l=a[0];for(let u=0;u<t.length;u++){let c=t[u],f=this._parentColumns[c][l];o[c][i]=f===void 0?null:f}i++}let s={};for(let a of t)s[a]=this._parentSchema[a];return L._createDirect(o,s,i)}agg(...e){let t=this._allKeys.length,r=new Array(t);for(let f=0;f<t;f++)r[f]=String(this._allKeys[f]);let o=this._keys.length,i=new Array(o);for(let f=0;f<o;f++)i[f]=String(this._keys[f]);let s=Ke(e.flat(),r,i,this._parentSchema,this._parentColumns),a=this._groups.size,l={};for(let f=0;f<i.length;f++)l[i[f]]=new Array(a);let u=0;for(let f of this._groups.values()){if(f.length===0)continue;let m=f[0];for(let h=0;h<i.length;h++){let p=i[h],d=this._parentColumns[p][m];l[p][u]=d===void 0?null:d}u++}for(let f=0;f<s.length;f++){let m=s[f],h=m._outputName||m._colName||"*";if(!m._aggFn)l[h]=m.evaluate(l,a);else{let p=m._evaluatePre(m._groupingOpsIndex,this._parentColumns,this._parentHeight),d=new Array(a),g=0;for(let y of this._groups.values()){if(y.length===0)continue;let _=new Array(y.length);for(let S=0;S<y.length;S++)_[S]=p[y[S]];d[g]=m._aggFn(_),g++}l[h]=m._evaluatePost(m._groupingOpsIndex,d,l)}}let c={};for(let f of i)c[f]=this._parentSchema[f];for(let f of s){let m=f._outputName||f._colName||"*",h=Mt(f,this._parentSchema,l[m])||$e(l[m]);c[m]=h,l[m]=Re(l[m],h,u)}return L._createDirect(l,c,u)}}});function Tl(n,e,t){if(n==null)throw new z(`Invalid input to ${e} at index ${t}: item cannot be null or undefined.`);if(n instanceof L)return[n];if(Ne(n))return[new L(n)];if(k(n)){if(Q(n,L,{mode:"every"}))return n;if(Q(n,"plainObject",{mode:"every"}))return[new L(n)];let r=Q(n,L,{mode:"some"});for(let o=0;o<n.length;o++)if(r?!(n[o]instanceof L):!Ne(n[o]))throw new z(r?`Invalid input to ${e} at index ${t}, sub-index ${o}: nested array must contain only DataFrame instances.`:`Invalid input to ${e} at index ${t}, row ${o}: rows must be plain objects.`)}throw new z(`Invalid input to ${e} at index ${t}: expected DataFrame, row array, or column dictionary.`)}function vt(n,{how:e="vertical",horizontal:t}={}){if(n==null)throw new z("Invalid input to concat: rawItems cannot be null or undefined.");let r=Array.isArray(n)?n:[n],o=[];for(let s=0;s<r.length;s++)o.push(...Tl(r[s],"concat",s));let i=t?.strict??!0;if(o.length===0)return L._createDirect({},{},0);if(o.length===1&&e!=="horizontal")return o[0];switch(e){case"vertical":{let s=[];for(let p=0;p<o.length;p++)o[p].height>0&&s.push(o[p]);if(s.length===0)return L._createDirect({},{},0);let a=s[0],l=Object.keys(a._columns);for(let p=0;p<o.length;p++){let d=o[p];if(d.height===0)continue;let g=Object.keys(d._columns);if(l.length!==g.length)throw new z(`[Strict Vertical] Column count mismatch at index ${p}.`);for(let y=0;y<l.length;y++){if(l[y]!==g[y])throw new z(`[Strict Vertical] Schema mismatch at position ${y} in DF ${p}. Expected column "${l[y]}", but found "${g[y]}".`);let _=a.schema[l[y]],S=d.schema[l[y]];if(_&&S&&!_.equals(S))throw new He(`[Strict Type Check] Schema type mismatch for column "${l[y]}": expected ${_.name}, found ${S.name}.`)}}let u=0;for(let p of o)u+=p.height;let c={},f=o.length;for(let p=0;p<f;p++)if(o[p].height>0){c=o[p].schema;break}Object.keys(c).length===0&&f>0&&(c=o[0].schema);let m={};for(let p of l){let d=c[p],g=!1;for(let _ of o){let S=_._columns[p];if(!S){g=!0;break}if(!K(S)){for(let b=0;b<S.length;b++)if(S[b]==null){g=!0;break}}if(g)break}let y=d&&d.allocate?d.allocate(u):new Array(u).fill(null);g&&K(y)&&(y=new Array(u).fill(null)),m[p]=y}let h=0;for(let p of o){let d=p.height;if(d!==0){for(let g of l){let y=p._columns[g]||new Array(d).fill(null),_=m[g];if(K(_)&&K(y))_.set(y,h);else{let S=_;for(let b=0;b<d;b++)S[h+b]=y[b]}}h+=d}}return L._createDirect(m,c,u)}case"horizontal":{let s=o[0].height;for(let c=1;c<o.length;c++)o[c].height>s&&(s=o[c].height);let a=new Set;for(let c=0;c<o.length;c++){let f=o[c];if(i&&f.height!==s)throw new re(`[Horizontal] Row count mismatch at index ${c}. Expected ${s}, got ${f.height}. Set strict=false to allow padding.`);for(let m of Object.keys(f._columns)){if(a.has(m))throw new z(`[Horizontal] Duplicate column name "${m}" detected. Horizontal concat requires unique names.`);a.add(m)}}let l={},u={};for(let c of o){let f=c.height;Object.assign(u,c.schema);let m=Object.keys(c._columns),h=m.length;for(let p=0;p<h;p++){let d=m[p],g=c._columns[d];if(f===s)l[d]=K(g)?Array.from(g):g;else{let y=new Array(s);for(let _=0;_<f;_++)y[_]=g[_];for(let _=f;_<s;_++)y[_]=null;l[d]=y}}}return L._createDirect(l,u,s)}case"diagonal":{let s=new Set;for(let m of o)for(let h of Object.keys(m._columns))s.add(h);let a=Array.from(s),l=0;for(let m=0;m<o.length;m++)l+=o[m].height;let u={};for(let m of a){let h=null;for(let p of o){let d=p.schema[m];if(d){if(h===null)h=d;else if(!h.equals(d))throw new He(`[Strict Type Check] Schema type mismatch for column "${m}": expected ${h.name}, found ${d.name}.`)}}u[m]=h||E.Utf8}let c={};for(let m=0;m<a.length;m++)c[a[m]]=new Array(l).fill(null);let f=0;for(let m=0;m<o.length;m++){let h=o[m],p=h.height;if(p!==0){for(let d=0;d<a.length;d++){let g=a[d],y=c[g],_=h._columns[g];if(_!==void 0)if(K(_)&&K(y))y.set(_,f);else{let S=y;for(let b=0;b<p;b++)S[f+b]=_[b]}else{let S=y;for(let b=0;b<p;b++)S[f+b]=null}}f+=p}}return L._createDirect(c,u,l)}}}var Br=R(()=>{"use strict";mt();Ce();q();X()});var L,mt=R(()=>{"use strict";Ut();Ls();Tt();Ce();q();X();Br();gn();L=class n{_columns;_height;_schema={};static _createDirect(e,t,r){yr(e,r);let o=Object.create(n.prototype);return o._columns=e,o._schema=t,o._height=r,o}constructor(e,t,r){if(Array.isArray(e)){let{columns:o,height:i}=ms(e);this._columns=o,this._height=i,t?this._applySchema(t):this._inferSchema();return}if(F(e)){this._columns=e,this._height=yr(e,r),t?this._applySchema(t):this._inferSchema();return}this._columns={},this._height=0,t?this._applySchema(t):this._schema={}}_inferSchema(){let e={},t=Object.keys(this._columns),r=t.length;for(let o=0;o<r;o++){let i=t[o];e[i]=$e(this._columns[i])}this._applySchema(e)}_applySchema(e){this._schema=e;let t=Object.keys(e),r={};for(let o of t){let i=e[o],s=this._columns[o];r[o]=s?Re(s,i,this._height):Re(new Array(this._height).fill(null),i,this._height)}this._columns=r}get columns(){return Object.keys(this._columns)}concat(e,t={}){let r=Q(e,n,{mode:"every",allowEmpty:!1})?e:[e];return vt([this,...r],t)}drop(...e){let t=new Set(e.flat()),r={},o={};for(let i of Object.keys(this._columns))t.has(i)||(r[i]=this._columns[i],o[i]=this._schema[i]);return n._createDirect(r,o,this._height)}drop_nulls(e){return this._height===0?this:this.filter(e?new U(e).is_not_null():Nt().is_not_null())}get dtypes(){let e=Object.keys(this._columns),t=e.length,r=new Array(t);for(let o=0;o<t;o++)r[o]=this._schema[e[o]];return r}explode(e,t){let r=Array.isArray(e)?e:[e],o=this._normalizeArgs(r),i=Ke(o,Object.keys(this._columns),void 0,this._schema,this._columns),s=new Set,a=i.length;for(let f=0;f<a;f++){let m=i[f],h=m._colName||m._outputName;if(!h||h==="*")throw new z("Expression passed to explode must have a column name.");Y(h,this._columns,"Explode column"),s.add(h)}let l=Object.keys(this._columns),u=[],c=l.length;for(let f=0;f<c;f++){let m=l[f];u.push(s.has(m)?new U(m).arr.explode(t):new U(m))}return this.select(...u)}fill_null(e={}){return this._height===0?this:this.with_columns(Nt().fill_null(e))}filter(...e){if(this._height===0)return n._createDirect({},this._schema,0);let t=this._height,r=Object.keys(this._columns),o=r.length,i=[],s=[],a=[],l=e.length;for(let g=0;g<l;g++){let y=e[g];typeof y=="function"?s.push(y):a.push(y)}let u=Ke(a,r,void 0,this._schema,this._columns),c=u.length;for(let g=0;g<c;g++)i.push(u[g].evaluate(this._columns,t));let f=[],m=0,h=null;if(s.length>0){let g=this._columns;h={};for(let y=0;y<o;y++){let _=r[y],S=g[_];Object.defineProperty(h,_,{get(){let b=S[m];return b===void 0?null:b},enumerable:!0,configurable:!0})}}for(let g=0;g<t;g++){let y=!0;for(let _=0;_<i.length;_++)if(!i[_][g]){y=!1;break}if(y){if(h){m=g;for(let _=0;_<s.length;_++)if(!s[_](h)){y=!1;break}}y&&f.push(g)}}let p=kt(this._columns,f),d=f.length;return n._createDirect(p,this._schema,d)}groupby(e){let t=be(e),r=new Map,o=this._height,i=ve(e,"string");for(let a=0;a<i.length;a++)Y(i[a],this._columns,"Grouping key");for(let a=0;a<o;a++){let l=Ve(this._columns,i,a),u=r.get(l);u===void 0&&r.set(l,u=[]),u.push(a)}let s=Object.keys(this._columns);return new Rn(r,t,s,this._columns,this._height,this._schema)}head(e=10){return this.limit(e,{offset:0,from:"start"})}clone(){let e={};for(let t of Object.keys(this._columns)){let r=this._columns[t];(Array.isArray(r)||K(r))&&(e[t]=r.slice())}return n._createDirect(e,{...this._schema},this._height)}get height(){return this._height}hstack(e,t={}){return this.concat(e,{how:"horizontal",horizontal:t})}insert_column(e,t,r){let o=U.toColExpr(r).alias(t),i=Object.keys(this._columns),s=i.length,a=[];for(let u=0;u<s;u++){let c=i[u];c!==t&&a.push(c)}let l=Math.max(0,Math.min(e,a.length));return a.splice(l,0,o),this.select(...a)}item(e,t){let r=this._height,o=Object.keys(this._columns),i=o.length;if(e===void 0&&t===void 0){if(r!==1||i!==1)throw new z("DataFrame.item() can only be called without arguments if the shape is (1, 1).");return this._columns[o[0]][0]}if(e===void 0||t===void 0)throw new z("DataFrame.item() requires both row and column to be specified if not empty.");if(e<0||e>=r)throw new re(`Row index ${e} is out of bounds for DataFrame height ${r}.`);let s;if(typeof t=="number"){if(t<0||t>=i)throw new re(`Column index ${t} is out of bounds for DataFrame width ${i}.`);s=o[t]}else if(s=t,this._columns[s]===void 0)throw new Pe(s);return this._columns[s][e]}*iter_columns(){let e=Object.keys(this._columns),t=e.length,r=this._columns;for(let o=0;o<t;o++)yield r[e[o]]}*iter_rows({named:e=!1}={}){let t=Object.keys(this._columns),r=t.length,o=this._columns,i=this._height,s=new Array(r);for(let a=0;a<r;a++)s[a]=o[t[a]];if(e)for(let a=0;a<i;a++){let l={};for(let u=0;u<r;u++)l[t[u]]=s[u][a];yield l}else for(let a=0;a<i;a++){let l=new Array(r);for(let u=0;u<r;u++)l[u]=s[u][a];yield l}}join(e){let{other:t,on:r,leftOn:o,rightOn:i,how:s="inner",suffixes:a=["","_right"],join_nulls:l=!1,coalesce:u=!0,maintain_order:c="none"}=e;if(s==="cross"&&(r!==void 0||o!==void 0||i!==void 0))throw new M('Cannot specify "on", "leftOn", or "rightOn" when how is "cross". Cross joins produce a keyless Cartesian product.');if(r!==void 0&&(o!==void 0||i!==void 0))throw new M('Cannot specify both "on" and "leftOn"/"rightOn" in join(). Use either "on" or both "leftOn" and "rightOn".');if(o!==void 0&&i===void 0||o===void 0&&i!==void 0)throw new M('join() requires both "leftOn" and "rightOn" when specifying heterogeneous join keys.');if(s!=="cross"&&r===void 0&&o===void 0&&i===void 0)throw new M('join() requires either "on" or both "leftOn" and "rightOn" parameters.');let f=[],m=[];if(o!==void 0&&i!==void 0){if(f=ve(o,"string"),m=ve(i,"string"),f.length===0||m.length===0)throw new M('join() requires non-empty key arrays in "leftOn" and "rightOn".');if(f.length!==m.length)throw new M(`join() "leftOn" length (${f.length}) must match "rightOn" length (${m.length}).`)}else if(r!==void 0&&(f=ve(r,"string"),m=f,f.length===0))throw new M('join() requires at least one key column in "on".');for(let y=0;y<f.length;y++)Y(f[y],this._columns,"Join key"," in the left DataFrame."),Y(m[y],t._columns,"Join key"," in the right DataFrame.");let p={...e,how:s,suffixes:a,join_nulls:l,coalesce:u,maintain_order:typeof c=="boolean"?c?"left":"none":c??"none"},{leftIndices:d,rightIndices:g}=ds(this._columns,t._columns,this._height,t._height,f,m,p);return _r(this._columns,t._columns,this._schema,t._schema,d,g,f,m,{suffixes:a,coalesce:u,how:s})}join_asof(e){let{other:t,on:r,leftOn:o,rightOn:i,by:s,leftBy:a,rightBy:l,strategy:u="backward",tolerance:c,allow_exact_matches:f=!0,suffixes:m=["","_right"],coalesce:h=!0,check_sorted:p=!0}=e;if(!t||!(t instanceof n))throw new M("join_asof() requires a valid right DataFrame in the 'other' parameter.");let d=String(o??r??""),g=String(i??r??"");if(!d||!g)throw new M('join_asof() requires join key specified via "on", or "leftOn" and "rightOn".');let y=O=>O?Array.isArray(O)?O.map(String):[String(O)]:[],_=y(a??s),S=y(l??s);if(_.length!==S.length)throw new M('join_asof() "by" (or "leftBy" / "rightBy") key lists must have equal lengths.');for(let O=0;O<_.length;O++)Y(_[O],this._columns,"Partition key"," in the left DataFrame."),Y(S[O],t._columns,"Partition key"," in the right DataFrame.");let b={...e,strategy:u,tolerance:c,allow_exact_matches:f,suffixes:m,coalesce:h,check_sorted:p},{leftIndices:x,rightIndices:A}=gs(this._columns,t._columns,this._height,t._height,d,g,_,S,b),w=[d,..._],D=[g,...S];return _r(this._columns,t._columns,this._schema,t._schema,x,A,w,D,{suffixes:m,coalesce:h,how:"left"})}limit(e,{offset:t=0,from:r="start"}={}){let o=this._height,i=Ee(Math.floor(e),{min:0,max:o}),s=Ee(Math.floor(t),{min:0,max:o}),a=s,l=Math.min(s+i,o);r==="end"&&(l=o-s,a=Math.max(l-i,0));let u=l-a,c={},f=Object.keys(this._columns),m=f.length;for(let h=0;h<m;h++){let p=f[h];c[p]=this._columns[p].slice(a,l)}return n._createDirect(c,this._schema,u)}pivot(e){if(this._height===0)return n._createDirect({},{},0);let{index:t,columns:r,values:o}=e,i=ve(t,"string"),s=i.length;for(let x=0;x<s;x++)Y(i[x],this._columns,"Pivot index key");let a=String(r),l=String(o);Y(a,this._columns,"Pivot column key"),Y(l,this._columns,"Pivot values key");let u=new Map,c=[],f=new Set,m=this._height,h=this._columns[a],p=this._columns[l];for(let x=0;x<m;x++){let A=Ve(this._columns,i,x);f.add(String(h[x])),u.get(A)===void 0&&(u.set(A,u.size),c.push(x))}let d=u.size,g={},y={};for(let x=0;x<s;x++){let A=i[x];g[A]=this._columns[A],this._schema[A]&&(y[A]=this._schema[A])}let _=kt(g,c),S=Array.from(f),b=this._schema[l]||E.Utf8;for(let x=0;x<S.length;x++){let A=S[x];_[A]=new Array(d).fill(null),y[A]=b}for(let x=0;x<m;x++){let A=Ve(this._columns,i,x),w=u.get(A),D=String(h[x]);_[D][w]=p[x]}return n._createDirect(_,y,d)}rename(e){let t=e||{},r={},o={},i=Object.keys(this._columns);for(let a of i){let l=t[a]||a;r[l]=this._columns[a],o[l]=this._schema[a]}if(Object.keys(r).length<i.length)throw new z("Rename collision: Multiple columns mapped to the same output name.");return n._createDirect(r,o,this._height)}reverse(){if(this._height===0)return this;let e={},t=Object.keys(this._columns),r=t.length;for(let o=0;o<r;o++){let i=t[o];e[i]=this._columns[i].slice().reverse()}return n._createDirect(e,this._schema,this._height)}get schema(){return this._schema}select(...e){let t=this._normalizeArgs(e),r=Object.keys(this._columns),o=Ke(t,r,void 0,this._schema,this._columns),i=o.length;if(i===0)return n._createDirect({},{},this._height);let s={},a={},l=new Array(i),u=new Array(i),c=new Set,f=null;for(let p=0;p<i;p++){let d=o[p],g=d._outputName||d._colName||"*";if(c.has(g))throw new z(`Duplicate column selection: "${g}" is selected multiple times.`);c.add(g);let y=de(d,this._columns,this._height);l[p]=y,u[p]=g;let _=y&&y.rowMap;if(_)if(f){let S=_.length;if(S!==f.length)throw new re(`Mismatched explode heights: Column "${g}" has length ${S}, but another exploded column has length ${f.length}`);for(let b=0;b<S;b++)if(_[b]!==f[b])throw new re(`Mismatched explode heights: Column "${g}" has mismatched row lengths compared to another exploded column.`)}else f=_}let m=f?f.length:this._height,h=i>0;for(let p=0;p<i;p++){let d=o[p],g=d._aggFn!=null&&(d._partitionBy==null||d._partitionBy.length===0),y=!!d._isLiteral;if(!g&&!y){h=!1;break}}for(let p=0;p<i;p++){let d=u[p],g=l[p],y=g,_=y&&y.rowMap,S=k(g)?g.length:0,b=f&&!_?this._height:m;if(S!==b)throw new re(`Column height mismatch: Column "${d}" has length ${S}, but expected ${b}`);if(f&&!_){let x=f.length;if(K(g)){let A=new y.constructor(x);for(let w=0;w<x;w++)A[w]=y[f[w]];g=A}else{let A=new Array(x);for(let w=0;w<x;w++)A[w]=y[f[w]];g=A}}l[p]=g}h&&(m=1);for(let p=0;p<i;p++){let d=o[p],g=u[p],y=l[p],_=Mt(d,this._schema,y)||$e(y);a[g]=_,s[g]=Re(y,_,m)}return n._createDirect(s,a,m)}get shape(){return[this.height,this.width]}slice(e,t){let r=this._height,o=e<0?Math.max(r+e,0):Math.min(e,r),i=t===void 0?r:t<0?Math.max(r+t,0):Math.min(t,r),s=Math.max(i-o,0);return this.limit(s,{offset:o})}sort(e){if(!e||!e.by||this._height===0)return this;let{by:t,descending:r=!1,nullsLast:o=!0,custom:i}=e,s=be(t);for(let p=0;p<s.length;p++){let d=U.toColExpr(s[p]);d._colName&&Y(d._colName,this._columns,"Sort key")}let a=Array.isArray(r)?r:new Array(s.length).fill(r),l=s.length,u=new Array(l);for(let p=0;p<l;p++){let d=s[p],g=a[p]?-1:1,y=i&&typeof d=="string"?i[d]:null,_=U.toColExpr(d).evaluate(this._columns,this._height);u[p]={values:_,isDesc:g,customComp:y}}let c=u.length,f=o?1:-1,m=new Array(this._height);for(let p=0;p<this._height;p++)m[p]=p;m.sort((p,d)=>{for(let g=0;g<c;g++){let{values:y,isDesc:_,customComp:S}=u[g],b=y[p],x=y[d];if(S){let w=S(b,x);if(w!==0)return w*_;continue}if(b==null||x==null){if(b===x)continue;return(b==null?1:-1)*f}if(b===x)continue;return(b<x?-1:1)*_}return 0});let h=kt(this._columns,m);return n._createDirect(h,this._schema,this._height)}tail(e=10){return this.limit(e,{offset:0,from:"end"})}to_dict(){return{...this._columns}}to_dicts(){return ps(this._columns,this._height)}to_array(e){if(this._height===0)return[];if(e==null)return new Array(this._height).fill(null);let r=U.toColExpr(e).evaluate(this._columns,this._height);return Array.isArray(r)?r:Array.from(r)}transpose({include_header:e=!1,header_name:t="column",column_names:r}={}){if(this._height===0){let c={},f={};return e&&(c[t]=Re([],E.Utf8,0),f[t]=E.Utf8),n._createDirect(c,f,0)}let o=this.columns;typeof r=="string"&&(Y(r,this._columns,"column_names"),o=o.filter(c=>c!==r));let i=[];if(typeof r=="string"){let c=this._columns[r];i=new Array(this._height);for(let f=0;f<this._height;f++){let m=c[f];if(m==null)throw new z(`Transpose column_names column "${r}" contains null/undefined at index ${f}`);i[f]=String(m)}}else if(r!=null&&typeof r!="string"&&Symbol.iterator in Object(r)){let c=Array.from(r);if(c.length!==this._height)throw new z(`column_names length (${c.length}) must match the height of the DataFrame (${this._height})`);i=new Array(this._height);for(let f=0;f<this._height;f++)i[f]=String(c[f])}else{i=new Array(this._height);for(let c=0;c<this._height;c++)i[c]=`column_${c}`}let s=new Set;e&&s.add(t);for(let c=0;c<i.length;c++){let f=i[c];if(s.has(f))throw new z(`Duplicate column name in transposed DataFrame: "${f}"`);s.add(f)}let a=o.length,l={},u={};e&&(l[t]=Re(o,E.Utf8,a),u[t]=E.Utf8);for(let c=0;c<this._height;c++){let f=i[c],m=new Array(a);for(let p=0;p<a;p++)m[p]=this._columns[o[p]][c];let h=$e(m);l[f]=Re(m,h,a),u[f]=h}return n._createDirect(l,u,a)}unique(e){if(this._height===0)return n._createDirect({},this._schema,0);let t=be(e),r=t.length===0?Object.keys(this._columns):t.map(String);for(let u of r)Y(u,this._columns,"Unique column key");let o=new Set,i=[],s=this._height;for(let u=0;u<s;u++){let c=Ve(this._columns,r,u);o.has(c)||(o.add(c),i.push(u))}let a=kt(this._columns,i),l=i.length;return n._createDirect(a,this._schema,l)}unpivot(e){let{idVars:t,valueVars:r,varName:o="variable",valueName:i="value"}=e,s=ve(t,"string"),a=ve(r,"string"),l=s.length,u=a.length;for(let p of s)Y(p,this._columns,"Unpivot id variable key");for(let p of a)Y(p,this._columns,"Unpivot value variable key");let c=this._height*u,f={};for(let p=0;p<l;p++)f[s[p]]=new Array(c);f[o]=new Array(c),f[i]=new Array(c);let m=0;for(let p=0;p<this._height;p++)for(let d=0;d<u;d++){let g=a[d];for(let y=0;y<l;y++){let _=s[y];f[_][m]=this._columns[_][p]}f[o][m]=g,f[i][m]=this._columns[g][p],m++}let h={};for(let p of s)h[p]=this._schema[p];return h[o]=E.Utf8,h[i]=$e(f[i]),n._createDirect(f,h,c)}vstack(e){return this.concat(e,{how:"vertical"})}get width(){return Object.keys(this._columns).length}_normalizeArgs(e){let t=e.flat(),r=[];for(let o of t)if(typeof o=="string")r.push(new U(o));else if(U.isColExpr(o))r.push(o);else if(F(o)){let i=Object.keys(o),s=i.length;for(let a=0;a<s;a++){let l=i[a],u=o[l];if(U.isColExpr(u))r.push(u.alias(l));else{let c=new U(l);c.evaluate=(f,m)=>new Array(m).fill(u),r.push(c)}}}return r}with_columns(...e){if(e.length===0)return this;let t=this._normalizeArgs(e),r=Object.keys(this._columns),o=Ke(t,r,void 0,this._schema,this._columns),i=o.length;if(i===0)return this;let s=new Map;for(let u=0;u<i;u++){let c=o[u],f=c._outputName||c._colName||"*";s.set(f,c)}let a=[],l=r.length;for(let u=0;u<l;u++){let c=r[u];a.push(s.get(c)||new U(c)),s.delete(c)}for(let u of s.values())a.push(u);return this.select(...a)}with_row_index(e="index",t=0){let r=dt(t,{mode:"independent",dtype:E.UInt32,step:1}),o=this.insert_column(0,e,r);return o._schema[e]=E.UInt32,o}write_json(e,{format:t="json",replacerOptions:r}={}){if(t!=="json"&&t!=="ndjson")throw new M(`Unsupported JSON format: "${t}". Expected "json" or "ndjson".`);let o=r?.replacer===null?void 0:ze(r),i;if(t==="ndjson"){let s=this.to_dicts(),a=s.length,l=new Array(a);for(let u=0;u<a;u++)l[u]=JSON.stringify(s[u],o);i=l.join(`
6
- `)}else i=JSON.stringify(this.to_dicts(),o);return hs(e,i),i}write_csv(e,t={}){if(e){if(typeof e=="string"){if(typeof Ze!="function")throw new je("File writing is not supported in this environment (missing require('fs')).");let r=Ze("fs"),o=r.openSync(e,"w");try{hn(this._columns,this._height,{...t,onRow:i=>{r.writeSync(o,i,null,"utf8")}})}finally{r.closeSync(o)}}else if(F(e)&&typeof e.write=="function")hn(this._columns,this._height,{...t,onRow:r=>{e.write(r)}});else throw new M("Invalid file argument. Expected a file path string or a writable stream/object with a write method.");return""}return hn(this._columns,this._height,t)}}});Ut();Ut();Ce();Br();mt();q();X();function Pr(n,{format:e="json",trimBeforeParse:t=!0,schema:r,...o}={}){let i=St(n,{format:e,trimBeforeParse:t,...o});if(i===n)throw new z(`Invalid JSON input: must be a valid, non-empty JSON ${e} string.`);let s=Array.isArray(i)?i:F(i)?[i]:[];return new L(s,r)}mt();q();function Lr(n,e={}){let{hasHeader:t=!0,schema:r,inferSchema:o=!0}=e,i=is(n,e);if(i.length===0)return new L({});let s,a;t?(s=i[0],a=i.slice(1)):(s=i[0].map((m,h)=>`column_${h}`),a=i);let l=s.length,u=a.length,c={};for(let m=0;m<l;m++){let h=s[m],p=new Array(u);for(let d=0;d<u;d++)p[d]=a[d][m]!==void 0?a[d][m]:"";c[h]=p}let f={};for(let m=0;m<l;m++){let h=s[m],p=c[h];if(r&&r[h])f[h]=p;else if(o){let{values:d}=ss(p,e);f[h]=d}else f[h]=p}return new L(f,r)}function Dl(n,e){return new L(n,e)}var pp={data:Dl,col:n=>new U(n),all:Nt,exclude:Os,coalesce:Is,concat:vt,read_json:Pr,read_csv:Lr,lit:gt,when:Rs,implode:Ns,seq_range:dt,element:Us,struct:Fs,duration:Mr,DataType:E};Ce();X();export{pp as $df,oe as ALL_COLUMNS_MARKER,wn as AggregationExpr,yn as ArithmeticExpr,rs as Array,rs as ArrayDataType,Sn as ArrayExpr,Er as ArrayExprNamespace,ct as ArrayType,Yi as Binary,fr as BinaryType,fn as Boolean,fn as BooleanDataType,ur as BooleanType,qr as COALESCE_MARKER,U as ColumnExpr,Pe as ColumnNotFoundError,xn as ComparisonExpr,ne as ComputeError,Le as DFScriptError,Gr as DURATION_MARKER,L as DataFrame,z as DataFrameError,te as DataType,E as DataTypeRegistry,es as Date,es as DateDataType,vr as DateTimeExprNamespace,hr as DateType,mn as Datetime,Ie as DatetimeType,Be as DecimalType,ns as Duration,he as DurationType,Qe as ELEMENT_MARKER,$ as ExprBase,Hi as Float32,lt as Float32Type,cn as Float64,ut as Float64Type,Et as FloatDataType,Rn as GroupedData,je as IOStreamError,qi as Int16,nr as Int16Type,zi as Int32,rr as Int32Type,un as Int64,or as Int64Type,Ki as Int8,tr as Int8Type,an as IntegerDataType,M as InvalidArgumentError,Kr as LITERAL_MARKER,_n as LogicalExpr,It as NestedDataType,Zi as Null,mr as NullType,at as NumericDataType,Qi as Object,Qi as ObjectDataType,pr as ObjectType,zr as STRUCT_MARKER,He as SchemaError,re as ShapeError,Je as SignedIntegerType,bn as StringExpr,Ar as StringExprNamespace,os as Struct,Dn as StructExpr,Cr as StructExprNamespace,Ct as StructType,Xe as TemporalDataType,En as TemporalExpr,ts as Time,dr as TimeType,Ji as UInt16,sr as UInt16Type,Wi as UInt32,ar as UInt32Type,Xi as UInt64,lr as UInt64Type,Gi as UInt8,ir as UInt8Type,We as UnsignedIntegerType,Rt as Utf8,cr as Utf8Type,Jr as WHEN_MARKER,jr as When,Cn as WhenThen,Fr as WhenThenChain,An as WindowExpr,gs as alignAsofIndices,ds as alignKeyIndices,Nt as all,Y as assertColumnExists,yr as assertHeight,dn as assertNotNull,Lu as assertValidArgument,Is as coalesce,Re as coerceColumn,ps as columnsToRows,Ve as computeRowHash,vt as concat,Bs as deduceBinaryType,T as derive,Mr as duration,Us as element,ys as evalBinaryOp,bl as evalUnaryOp,pt as evaluateArg,de as evaluateExpression,Os as exclude,kt as gatherColumnsByIndices,Xu as getRowFromColumns,Ns as implode,$e as inferColumnType,ht as isEvaluatedColumn,V as kleeneBinary,I as kleeneUnary,gt as lit,_r as materializeJoinedDataFrame,Lr as read_csv,Pr as read_json,Ke as resolveColumnSelectors,Mt as resolveExprOutputType,yt as resolveOperandType,fs as resolveWindowExpr,ms as rowsToColumns,dt as seq_range,Fs as struct,Rs as when,hs as writeStringToFileOrStream};
1
+ var he=Object.defineProperty;var Ma=Object.getOwnPropertyDescriptor;var Ua=Object.getOwnPropertyNames;var Fa=Object.prototype.hasOwnProperty;var ja=(e,t,n)=>t in e?he(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var An=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var j=(e,t)=>()=>(e&&(t=e(e=0)),t);var To=(e,t)=>{for(var n in t)he(e,n,{get:t[n],enumerable:!0})},va=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Ua(t))!Fa.call(e,o)&&o!==n&&he(e,o,{get:()=>t[o],enumerable:!(r=Ma(t,o))||r.enumerable});return e};var Eo=e=>va(he({},"__esModule",{value:!0}),e);var T=(e,t,n)=>ja(e,typeof t!="symbol"?t+"":t,n);var ht,Io,Do,Sn,Co,du,Ro,Gt=j(()=>{"use strict";ht="*",Io="*literal*",Do="*coalesce*",Sn="*element*",Co="*struct*",du="*duration*",Ro="*when*"});var _o=j(()=>{"use strict"});function v(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Ft(e){if(!v(e))return!1;try{if(!Object.prototype.hasOwnProperty.call(e,Symbol.toStringTag)&&Object.prototype.toString.call(e)!==Xa)return!1;let t=Object.getPrototypeOf(e);if(t===null)return!0;if(Object.getPrototypeOf(t)!==null||!Object.prototype.hasOwnProperty.call(t,"isPrototypeOf"))return!1;let n=Object.getOwnPropertyDescriptor(t,"toString");if(!n||typeof n.value!="function")return!1;let r=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof r!="function"?!1:Function.prototype.toString.call(r)===dl}catch{return!1}}function Lo(e){if(typeof e!="function")return!1;try{let t=Function.prototype.toString.call(e),n=t.replace(/^(?:\s+|\/\*[\s\S]*?\*\/|\/\/[^\r\n]*)+/,"");if(/^(?:@[\w$.]+(?:\([^)]*\))?\s+)*class\b/.test(n))return!0;let r=Object.getOwnPropertyDescriptor(e,"prototype");if(r&&!r.writable&&t.includes("[native code]")){let o=Bo.length;for(let i=0;i<o;i++)try{return Reflect.construct(e,Bo[i],hl),!0}catch{}}}catch{return!1}return!1}function jt(e,t,n,r){if(!v(e))return!1;if(n)try{let o=n.call(e);return r!==void 0?o===r:!0}catch{return!1}try{return Object.prototype.hasOwnProperty.call(e,Symbol.toStringTag)?!1:Object.prototype.toString.call(e)===t}catch{return!1}}function L(e){if(!v(e))return!1;if(jo)try{return!Number.isNaN(jo.call(e))}catch{return!1}try{return Object.prototype.hasOwnProperty.call(e,Symbol.toStringTag)?!1:Object.prototype.toString.call(e)===Ba&&!Number.isNaN(e.getTime())}catch{return!1}}function mt(e){return jt(e,Pa,rl)}function ge(e){return jt(e,Va,ol)}function be(e){return jt(e,La,il)}function $o(e){if(!v(e))return!1;if(vo)try{return vo.call(e,"key"),!0}catch{return!1}return jt(e,Ka,void 0)}function Ko(e){if(!v(e))return!1;try{if(e instanceof Error)return!0;let t=e;for(;t!==null;){if(!Object.prototype.hasOwnProperty.call(t,Symbol.toStringTag)&&Object.prototype.toString.call(t)===$a)return!0;t=Object.getPrototypeOf(t)}}catch{return!1}return!1}function xe(e){if(!v(e))return!1;try{let t=ArrayBuffer.isView(e)?e.buffer:e;return Ae(t)||!we(t)?!1:"detached"in t&&t.detached!==void 0?t.detached===!0:(al?.call(t,0,0),!1)}catch{return!0}}function we(e){return jt(e,Ja,sl)}function Ae(e){return jt(e,Wa,ll)}function qo(e){return jt(e,za,ul)}function ar(e){return jt(e,qa,Jt,"Uint8Array")}function Go(e){return jt(e,Ga,Jt,"Uint8ClampedArray")}function Q(e){if(!v(e))return e;let t=Po.length;for(let n=0;n<t;n++){let r=Po[n];if(r)try{return r.call(e)}catch{}}return e}var Ba,Pa,Va,La,$a,Ka,qa,Ga,Ja,Wa,za,Xa,Ya,No,ko,Mo,Ha,Za,Qa,tl,nl,el,rl,ol,il,sr,Uo,Fo,Jt,sl,al,ll,ul,jo,vo,cl,fl,ml,pl,yl,dl,Vo,hl,gl,Bo,Po,Rt=j(()=>{"use strict";Ba="[object Date]",Pa="[object RegExp]",Va="[object Set]",La="[object Map]",$a="[object Error]",Ka="[object URLSearchParams]",qa="[object Uint8Array]",Ga="[object Uint8ClampedArray]",Ja="[object ArrayBuffer]",Wa="[object SharedArrayBuffer]",za="[object DataView]",Xa="[object Object]",Ya=typeof Date=="function"?Date.prototype:void 0,No=typeof RegExp=="function"?RegExp.prototype:void 0,ko=typeof Set=="function"?Set.prototype:void 0,Mo=typeof Map=="function"?Map.prototype:void 0,Ha=typeof URLSearchParams=="function"?URLSearchParams.prototype:void 0,Za=typeof String=="function"?String.prototype:void 0,Qa=typeof Number=="function"?Number.prototype:void 0,tl=typeof Boolean=="function"?Boolean.prototype:void 0,nl=typeof BigInt=="function"?BigInt.prototype:void 0,el=typeof Symbol=="function"?Symbol.prototype:void 0,rl=No?Object.getOwnPropertyDescriptor(No,"source")?.get:void 0,ol=ko?Object.getOwnPropertyDescriptor(ko,"size")?.get:void 0,il=Mo?Object.getOwnPropertyDescriptor(Mo,"size")?.get:void 0,sr=typeof ArrayBuffer=="function"?ArrayBuffer.prototype:void 0,Uo=typeof SharedArrayBuffer=="function"?SharedArrayBuffer.prototype:void 0,Fo=typeof DataView=="function"?DataView.prototype:void 0,Jt=typeof Uint8Array=="function"?Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Uint8Array.prototype),Symbol.toStringTag)?.get:void 0,sl=sr?Object.getOwnPropertyDescriptor(sr,"byteLength")?.get:void 0,al=sr?.slice,ll=Uo?Object.getOwnPropertyDescriptor(Uo,"byteLength")?.get:void 0,ul=Fo?Object.getOwnPropertyDescriptor(Fo,"byteLength")?.get:void 0,jo=Ya?.valueOf,vo=Ha?.has,cl=Za?.valueOf,fl=Qa?.valueOf,ml=tl?.valueOf,pl=nl?.valueOf,yl=el?.valueOf,dl=Function.prototype.toString.call(Object);Vo=function(){},hl=new Proxy(Vo,{construct(){return this}}),gl=typeof ArrayBuffer=="function"?new ArrayBuffer(0):void 0,Bo=[[],[Vo],[gl],[{}]];Po=[fl,cl,ml,pl,yl]});var Jo,Wo,Wt,lr,ur,Se,St,Jn,Mt,_t,Oe,On,Te,Wn,zn,cr,fr,mr,Xn,Yn,un,bl,zo,Xo,Yo,Ho,Zo,Qo,ti,ni,ei,ri,oi,ii,si,ai,li,ui,ci,fi,pr,mi,pi,yr,dr,yi,Ot=j(()=>{"use strict";Jo="\\r\\n|\\n|\\r",Wo=/\r\n|\n|\r/,Wt=new TextEncoder,lr=new TextDecoder("utf-8"),ur=new TextDecoder("utf-8",{fatal:!0}),Se=6048e5,St=864e5,Jn=36e5,Mt=6e4,_t=1e3,Oe=1,On=.001,Te=1e-6,Wn=1e3,zn=1e6,cr=1000n,fr=1000000n,mr=Object.freeze({sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6}),Xn="\0",Yn="",un=-1,bl=4294967295,zo=-9223372036854775808n,Xo=9223372036854775807n,Yo=0n,Ho=18446744073709551615n,Zo=-2147483648,Qo=2147483647,ti=0,ni=bl,ei=-32768,ri=32767,oi=0,ii=65535,si=-128,ai=127,li=0,ui=255,ci=31,fi=127,pr=55296,mi=56319,pi=56320,yr=57343,dr=Object.freeze({9:"\\t",10:"\\n",11:"\\v",12:"\\f",13:"\\r"}),yi=Object.freeze({b:"\b",0:"\0",...Object.fromEntries(Object.entries(dr).map(([e,t])=>[t.slice(1),String.fromCharCode(Number(e))]))})});function M(e,t){return typeof e!="number"?!1:Number.isNaN(e)?t?.allowNaN??t?.allowNonFiniteNumbers??!1:Number.isFinite(e)?!0:t?.allowNonFiniteNumbers??!1}function di(e){for(let t=1;t<e.length;t++)if(e[t].length!==3)return!1;return!0}function wi(e,t){if(xl.test(e))return null;let n=e.trim();if(n==="")return null;n.startsWith("(")&&n.endsWith(")")&&(n="-"+n.slice(1,-1).trim());let r=n[n.length-1];(r==="-"||r==="+")&&n.length>1&&(n=r+n.slice(0,-1).trim()),t||(n=n.replace(wl,""));let o=n.includes("."),i=n.includes(",");if(o&&i){let s=n.lastIndexOf("."),a=n.lastIndexOf(","),l=a>s,c=l?".":",",u=l?a:s,f=n.slice(0,u).split(c);return f.length>1&&!di(f)||f[0].replace(hi,"").length>3?null:l?n.replace(gi,"").replace(Ee,"."):n.replace(Ee,"")}if(i||o){let s=i?",":".",a=n.split(s);if(a.length>2||s===","&&a.length===2&&a[1].length===3){let l=a[0].replace(hi,"").length;if(l===0){if(s===","||a.length>2)return null}else return l>3?null:di(a)?n.replace(i?Ee:gi,""):null}if(i)return n.replace(Ee,".")}return n}function $(e,{allowNonFiniteNumbers:t=!1,strictNumericString:n=!1,floatScientific:r=!0}={}){if(e==null||typeof e=="symbol")return null;switch(e=Q(e),typeof e){case"number":return M(e,{allowNonFiniteNumbers:t})?e:null;case"boolean":return e?1:0;case"bigint":{let o=Number(e);return M(o,{allowNonFiniteNumbers:t})?o:null}case"object":{if(L(e)){let o=e.getTime();return M(o,{allowNonFiniteNumbers:t})?o:null}return null}case"string":{let o=wi(e,n);if(o===null)return null;if(t){let a=o.toLowerCase();if(a==="nan"||a==="-nan"||a==="+nan")return NaN;if(a==="infinity"||a==="+infinity")return 1/0;if(a==="-infinity")return-1/0}if(xi.test(o)&&!r||!bi.test(o))return null;let s=Number(o);return M(s,{allowNonFiniteNumbers:t})?s:null}default:return null}}function Ai({locale:e="en-US",accountingNegatives:t=!1,fallback:n="NaN",formatNonFinite:r=!1,...o}={}){o.useGrouping===void 0&&(o.useGrouping=!1),o.maximumFractionDigits===void 0&&o.maximumSignificantDigits===void 0&&(o.maximumFractionDigits=20),t&&(o.currencySign="accounting",o.style===void 0&&(o.style="decimal"));let i=new Intl.NumberFormat(e,o);return s=>{if(typeof s=="bigint")return t&&s<0n?`(${i.format(-s)})`:i.format(s);let a=$(s,{allowNonFiniteNumbers:!0});return a===null||Number.isNaN(a)?n:Number.isFinite(a)?t&&a<0?`(${i.format(Math.abs(a))})`:i.format(a):r?n:t&&a===-1/0?`(${i.format(1/0)})`:String(a)}}function hr(e,{floatPrecision:t="Float64",allowNonFiniteNumbers:n=!0,floatScientific:r=!0,strictNumericString:o=!1}={}){let i=$(e,{allowNonFiniteNumbers:n,floatScientific:r,strictNumericString:o});return i===null||(t==="Float32"&&(i=Math.fround(i)),!M(i,{allowNonFiniteNumbers:n}))?null:i}function Ie(e,t,n){if(!e)return null;let r=typeof e=="string"?t[e]:e;return r&&typeof r.min===n&&typeof r.max===n?r:null}function At(e,{range:t="Int32"}={}){if(!M(e)||!Number.isInteger(e))return!1;let n=Ie(t,Si,"number");return n!=null&&e>=n.min&&e<=n.max}function gt(e,{range:t="Int32",coerce:n="truncate"}={}){let r=$(e);if(r===null)return null;switch(n){case"round":r=Math.round(r);break;case"floor":r=Math.floor(r);break;case"ceil":r=Math.ceil(r);break;case"truncate":r=Math.trunc(r);break}let o=Ie(t,Si,"number");return o!=null?z(r,{min:o.min,max:o.max}):null}function Tn(e,{range:t="Int64"}={}){let n=Q(e);if(typeof n!="bigint")return!1;let r=Ie(t,Oi,"bigint");return r!=null&&n>=r.min&&n<=r.max}function zt(e,{range:t="Int64",truncate:n=!1}={}){if(e==null||typeof e=="symbol")return null;try{e=Q(e)}catch{return null}let r=null;if(typeof e=="bigint")r=e;else if(typeof e=="string"){let i=wi(e,!1);if(i===null||!bi.test(i))return null;if(xi.test(i)){let s=i.search(/[eE]/),a=i.slice(0,s),l=i.slice(s+1),c=parseInt(l,10);if(Number.isNaN(c)||c>1e5||c<-1e5)return null;let u=a.startsWith("-");(u||a.startsWith("+"))&&(a=a.slice(1));let f=a.indexOf("."),p=a,m=0;f!==-1&&(m=a.length-f-1,p=a.slice(0,f)+a.slice(f+1)),p=p.replace(/^0+/,"")||"0";try{let y=BigInt(p);u&&(y=-y);let d=c-m;if(d>=0)r=y*10n**BigInt(d);else{let h=10n**BigInt(-d),g=y%h;if(!n&&g!==0n)return null;r=y/h}}catch{return null}}else{let s=i.indexOf(".");if(s!==-1){if(!n&&/[^0]/.test(i.slice(s+1)))return null;i=i.slice(0,s)}try{r=BigInt(i)}catch{return null}}}else{let i=$(e);if(i===null||!n&&!Number.isInteger(i))return null;r=BigInt(Math.trunc(i))}let o=Ie(t,Oi,"bigint");return!o||r<o.min||r>o.max?null:r}function Al(e,t){let n=e-t;if(n<0||t<0)return null;if(n>15)return Number.K;let r=z(t,{min:0,max:16}),o=Math.pow(10,n)-Math.pow(10,-r);return o>0?o:null}function gr(e,t){if(!Number.isFinite(e))return e;let n=e.toString();if(n.includes("e")){let r=Math.pow(10,t);return Math.round(e*r)/r}return+(Math.round(+(n+"e"+t))+"e"+-t)}function De(e,{precision:t,scale:n}={}){let r=$(e);if(r===null)return null;let o=r;if(n!==void 0&&(o=gr(o,n)),t!==void 0){let s=Al(t,n??0);s!==null&&(o=z(o,{min:-s,max:s}))}return o}function z(e,t){if(!t)return e;let{min:n=null,max:r=null,safe:o=!0}=t;if(n!==null&&r!==null&&n>r)return n;let i=e;if(o&&typeof i=="number"){if(Number.isNaN(i))return n!==null?n:r!==null?r:e;if(i===1/0)return r!==null?r:e;if(i===-1/0)return n!==null?n:e}return n!==null&&i<n?n:r!==null&&i>r?r:i}function Ti(e){let t=e|0;return function(){let n=t=t+1831565813|0;return n=Math.imul(n^n>>>15,n|1),n^=n+Math.imul(n^n>>>7,n|61),((n^n>>>14)>>>0)/4294967296}}var bi,xl,wl,xi,hi,gi,Ee,Si,Oi,vt=j(()=>{"use strict";Rt();Ot();bi=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,xl=/0[xobXOB]/,wl=/[\s_\u200B-\u200D\uFEFF]/g,xi=/[eE]/;hi=/^[+-]/,gi=/\./g,Ee=/,/g;Si={Int8:{min:si,max:ai},Int16:{min:ei,max:ri},Int32:{min:Zo,max:Qo},UInt8:{min:li,max:ui},UInt16:{min:oi,max:ii},UInt32:{min:ti,max:ni}};Oi={Int64:{min:zo,max:Xo},UInt64:{min:Yo,max:Ho}}});function ot(e){if(!ArrayBuffer.isView(e))return!1;if(Jt)return Jt.call(e)!==void 0;let t=Object.prototype.toString.call(e);return t!=="[object DataView]"&&t.endsWith("Array]")}function V(e){return Array.isArray(e)||ot(e)}function bt(e){return e==null?[]:Array.isArray(e)?[...e]:ot(e)?Array.from(e):[e]}function En(e,t,n){let r=e.length,o=t<-r||t>=r;if(o&&!n)throw new at(`Index ${t} is out of bounds for array of length ${r}`);return o?null:e.at(t)??null}function Di(e){if(typeof e=="function"){let t=Lo(e);return{check:t?n=>n instanceof e:n=>!!e(n),coerce:n=>{if(t)return n instanceof e?n:null;let r=e(n);return typeof r=="boolean"?r?n:null:r}}}switch(e){case"string":return{check:t=>typeof t=="string",coerce:t=>String(t)};case"number":return{check:M,coerce:t=>$(t)??NaN};case"boolean":return{check:t=>typeof t=="boolean",coerce:Boolean};case"bigint":return{check:Tn,coerce:t=>zt(t)};case"date":return{check:L,coerce:t=>X(t)};case"object":return{check:v,coerce:t=>v(t)?t:null};case"plainObject":return{check:Ft,coerce:t=>Ft(t)?t:null};case"null":return{check:t=>t===null,coerce:()=>null};case"undefined":return{check:t=>t===void 0,coerce:()=>{}};case"nullish":return{check:t=>t==null,coerce:()=>null};default:return{check:()=>!0,coerce:t=>t}}}function H(e,t,{mode:n="every",allowNulls:r=!1,allowEmpty:o=!0}={}){if(!V(e))return!1;let i=e,s=i.length;if(s===0)return o?n==="every":!1;let{check:a}=Di(t);if(n==="every"){for(let l=0;l<s;l++){let c=i[l];if(!(r&&c==null)&&!a(c))return!1}return!0}for(let l=0;l<s;l++){let c=i[l];if(r&&c==null||a(c))return!0}return!1}function Nt(e,t="any",{mode:n="every",allowNulls:r=!1,allowEmpty:o=!0}={}){let i=bt(e),s=i.length;if(s===0){if(!o)throw new at("Expected non-empty array");return[]}let{check:a,coerce:l}=Di(t),c=new Array(s),u=0;for(let f=0;f<s;f++){let p=i[f];if(r&&p==null){c[u++]=p;continue}let m=l(p);if(a(m))c[u++]=m;else if(n==="every")throw new at(`Failed to convert array item at index ${f} ('${p}') to target type '${t}'`)}if(n==="some"){if(u===0)throw new at(`No items in array could be converted to target type '${t}'`);u<s&&(c.length=u)}return c}function br(e,t,{descending:n=!1,nullsLast:r=!0,customComp:o}={}){let s=!!(Array.isArray(n)?n[0]:n)?-1:1;if(typeof o=="function")return o(e,t)*s;if(Object.is(e,t)||e==null&&t==null)return 0;if(e==null||t==null)return(e==null?1:-1)*(r?1:-1);let a=L(e),l=L(t);if(a!==l)return a?-1:1;if(a&&l)return(e.getTime()<t.getTime()?-1:e.getTime()>t.getTime()?1:0)*s;let c=typeof e,u=typeof t,f=c==="number"||c==="bigint",p=u==="number"||u==="bigint",m=Number.isNaN(e),y=Number.isNaN(t);return m&&y?0:m||y?(m?1:-1)*(r?1:-1):f&&p?(e<t?-1:e>t?1:0)*s:c!==u?c<u?-1:1:c==="string"?e.localeCompare(t)*s:(e<t?-1:e>t?1:0)*s}function Hn(e,{descending:t=!1,nullsLast:n=!0,customComp:r}={}){if(!V(e))return[];let o=e,i=o.length;if(i<=1)return ot(e)?Array.from(o):i===0?[]:[o[0]];let s=!!(Array.isArray(t)?t[0]:t),a=e instanceof Float32Array||e instanceof Float64Array;if(ot(e)&&!r&&n&&(!a||!s)){let c=o.slice().sort();return s&&c.reverse(),Array.from(c)}let l=new Array(i);for(let c=0;c<i;c++)l[c]=o[c];return l.sort((c,u)=>br(c,u,{descending:t,nullsLast:n,customComp:r}))}function K(e){if(!V(e))return Ei;let t=e.length;if(t===0)return Ei;let n=null,r=null,o=null,i=null,s=0,a=0,l=0,c=0,u=0,f=1,p=0,m=0;for(let h=0;h<t;h++){let g=e[h];if(g==null){a++;continue}if(typeof g=="number"&&Number.isNaN(g)){l++,a++;continue}(n==null||g<n)&&(n=g,o=h),(r==null||g>r)&&(r=g,i=h);let x=$(g);if(x!==null){let b=c+x;Math.abs(c)>=Math.abs(x)?u+=c-b+x:u+=x-b+c,c=b,f*=x,s++;let O=x-p;p+=O/s;let w=x-p;m+=O*w}}let y=s>1?m/(s-1):0,d=l>0;return{sum:s>0?c+u:null,product:s>0?f:null,count:s,min:n,max:r,nanMin:d?NaN:n,nanMax:d?NaN:r,minIdx:o,maxIdx:i,mean:s>0?(c+u)/s:null,variance:y,std:Math.sqrt(y),nullCount:a,nanCount:l,len:t,hasNulls:a>0,isNumeric:s>0&&s===t-a}}function Xt(e,{strict:t=!1,keySelector:n}={}){let r=Array.from(e),o=new Map;if(t){let s=n??lt,a=new Map,l=r.length;for(let u=0;u<l;u++){let f=r[u],p=s(f),m=a.get(p);m===void 0?a.set(p,{val:f,count:1}):m.count++}let c=[];for(let u of a.values())c.push(u.val);for(let u=0;u<l;u++){let f=r[u],p=s(f),m=a.get(p);o.set(f,m.count)}return{values:c,count:c.length,frequencies:o}}let i=r.length;for(let s=0;s<i;s++){let a=r[s];o.set(a,(o.get(a)??0)+1)}return{values:Array.from(o.keys()),count:o.size,frequencies:o}}function Ce(e,{step:t=1,offsetStart:n=0,offsetEnd:r,maxItemsGathered:o,nullOnOob:i=!0}={}){if(e==null)return null;if(o!==void 0&&o<=0)return[];if(t===0)throw new N("Step size step cannot be zero");let s=e.length;if(s===0?n!==0:n>=s||n<-s){if(!i)throw new at(`Start offset ${n} is out of bounds for array of length ${s}`);return null}let l=n<0?s+n:n,c=r!==void 0?r<0?s+r:r:t>0?s:-1,u=[];if(t>0)for(let f=l;f<c&&f<s&&!(f>=0&&(u.push(e[f]),o!==void 0&&u.length>=o));f+=t);else for(let f=l;f>c&&f>=0&&!(f<s&&(u.push(e[f]),o!==void 0&&u.length>=o));f+=t);return u}function Re(e,t=",",{ignoreNulls:n=!1,nullValue:r="",prefix:o="",suffix:i="",limit:s,truncationMarker:a="...",valueFormatter:l}={}){let c=e.length,u=[],f=z(s??c,{min:0}),p=!1;for(let m=0;m<c;m++){if(u.length>=f){p=!0;break}let y=e[m];y!=null?u.push(l?l(y,m):String(y)):n||u.push(r)}return o+u.join(t)+(p?a:"")+i}function Ci(e,t,n={}){let r=e.length,{mode:o="cumulative",step:i=1,coerce:s=d=>d,condition:a,reverse:l=!1,startIndex:c=l?r-1:0,endIndex:u=l?-1:r}=n,f=l?-1:1,p=c,m=u,y=(d,h)=>{(!a||a(e[d],d,e))&&(e[d]=s(h))};if(o==="constant"){let d=s(t);for(let h=p;l?h>m:h<m;h+=f)y(h,d)}else if(o==="independent")if(typeof i=="function"){let d=0;for(let h=p;l?h>m:h<m;h+=f)y(h,i({index:d,initialValue:t,originalValue:e[h],absoluteIndex:h,targetArray:e})),d++}else for(let d=p;l?d>m:d<m;d+=f)y(d,t+d*i);else{let d=t,h=!0,g=0;for(let x=p;l?x>m:x<m;x+=f)h?(y(x,d),h=!1):(typeof i=="function"?d=i({prev:d,index:g,originalValue:e[x],absoluteIndex:x,targetArray:e}):d=d+i,y(x,d)),g++}}function Sl(e){let t=e.length,n=0,r=new Float64Array(t);for(let i=0;i<t;i++){let s=e[i],a=$(s,{allowNonFiniteNumbers:!0});a!==null&&M(a,{allowNonFiniteNumbers:!0,allowNaN:!1})&&(r[n++]=a)}if(n===0)return null;let o=r.subarray(0,n);return o.sort(),o}function cn(e,t){if(t<0||t>1)return null;let n=Sl(e);if(!n)return null;let r=n.length,o=t*(r-1),i=Math.floor(o),s=Math.ceil(o);return i===s?n[i]:n[i]+(o-i)*(n[s]-n[i])}function _e(e){if(!V(e)||e.length===0)return null;let t=new Map,n=e.length,r=0,o=[];for(let i=0;i<n;i++){let s=e[i];if(s==null||typeof s=="number"&&!M(s,{allowNonFiniteNumbers:!0,allowNaN:!1}))continue;let a=(t.get(s)??0)+1;t.set(s,a),a>r?(r=a,o=[s]):a===r&&o.push(s)}return o.length===0?null:Hn(o)}function Ri(e,t){let n=e.length;if(n===0)return[];let r=Math.trunc(t);if(isNaN(r)||r===0)return bt(e);let o=Math.abs(r);if(o>=n)return new Array(n).fill(null);let i=new Array(n);if(r>0){i.fill(null,0,r);for(let s=r;s<n;s++){let a=e[s-r];i[s]=a??null}}else{let s=n-o;for(let a=0;a<s;a++){let l=e[a+o];i[a]=l??null}i.fill(null,s,n)}return i}function _i(e){let t=e.length,n=new Float64Array(t),r=new Float64Array(t),o=0;for(let i=0;i<t;i++){let s=e[i];if(!s)continue;let a=$(s[0]),l=$(s[1]);a===null||l===null||(n[o]=a,r[o]=l,o++)}return{xArr:n,yArr:r,count:o}}function Ni(e,t,n){if(n<2)return null;let r=0,o=0,i=0,s=0,a=0;for(let f=0;f<n;f++){let p=e[f],m=t[f],y=p-r;r+=y/(f+1);let d=p-r,h=m-o;o+=h/(f+1);let g=m-o;a+=y*g,i+=y*d,s+=h*g}let l=a/(n-1);if(i===0||s===0)return{covariance:l,correlation:null};let c=Math.sqrt(i*s);if(c===0||Number.isNaN(c))return{covariance:l,correlation:null};let u=z(a/c,{min:-1,max:1});return{covariance:l,correlation:u}}function xr(e){let{xArr:t,yArr:n,count:r}=_i(e);return r<2?{covariance:null,correlation:null}:Ni(t,n,r)??{covariance:null,correlation:null}}function Ii(e){let t=e.length,n=new Int32Array(t);for(let i=0;i<t;i++)n[i]=i;n.sort((i,s)=>e[i]-e[s]);let r=new Float64Array(t),o=0;for(;o<t;){let i=o+1;for(;i<t&&e[n[i]]===e[n[o]];)i++;let s=(o+1+i)/2;for(let a=o;a<i;a++)r[n[a]]=s;o=i}return r}function Ol(e,t,n){let r=Ni(e,t,n);return r?r.correlation:null}function ki(e){let{xArr:t,yArr:n,count:r}=_i(e);if(r<2)return null;let o=Ii(t.subarray(0,r)),i=Ii(n.subarray(0,r));return Ol(o,i,r)}function Mi(e){let t=e.length,n=0,r=0;for(let o=0;o<t;o++){let i=e[o];if(!i)continue;let s=$(i[0]),a=$(i[1]);s===null||a===null||(n+=s*a,r++)}return r>0?n:null}function Ui(e){let t=e.length,n=0,r=0,o=0;for(let i=0;i<t;i++){let s=e[i];if(!s)continue;let a=$(s[0]),l=$(s[1]);a===null||l===null||(n+=a*l,r+=l,o++)}return o===0||Math.abs(r)<1e-12?null:n/r}function Fi(e,t){let n=z(Math.floor(e||0),{min:0}),r=z(Math.floor(t||0),{min:0}),o=n*r;if(!At(o,{range:"UInt32"}))throw new N(`Cartesian product size (${o} rows) exceeds maximum JavaScript array capacity.`);let i=new Array(o),s=new Array(o),a=0;for(let l=0;l<n;l++)for(let c=0;c<r;c++)i[a]=l,s[a]=c,a++;return{leftIndices:i,rightIndices:s}}function fn(e,t,n={}){let r=n.side==="right",o=n.getValue,i=0,s=e.length;for(;i<s;){let a=i+s>>>1,l=o?o(a,e[a]):e[a];(r?l<=t:l<t)?i=a+1:s=a}return i}function ji(e){if(!V(e))return null;let{mean:t,count:n}=K(e);if(n<2||t===null)return null;let r=0,o=0,i=0,s=e.length;for(let a=0;a<s;a++){let l=$(e[a]);if(l===null)continue;let c=l-t,u=c*c;r+=u,o+=u*c,i+=u*u}return r<=0?null:{count:n,mean:t,m2Sum:r,m3Sum:o,m4Sum:i}}function vi(e,t={}){let n=ji(e);if(!n)return null;let{count:r,m2Sum:o,m3Sum:i}=n,s=o/r,l=i/r/Math.pow(s,1.5);if(t?.bias??!0)return M(l)?l:null;if(r<3)return null;let u=Math.sqrt(r*(r-1))/(r-2)*l;return M(u)?u:null}function Bi(e,t={}){let n=ji(e);if(!n)return null;let{count:r,m2Sum:o,m4Sum:i}=n,s=o/r,l=i/r/(s*s),c=l-3,u=t?.fisher??!0;if(t?.bias??!0){let y=u?c:l;return M(y)?y:null}if(r<4)return null;let p=(r-1)/((r-2)*(r-3))*((r+1)*c+6),m=u?p:p+3;return M(m)?m:null}function Pi(e,t={}){if(!e||e.length===0)return null;let{base:n=Math.E,normalize:r=!0}=t;if(n<=0||n===1)return null;let o=e.length,i=Math.log(n);if(r){let s=new Map,a=0;for(let c=0;c<o;c++){let u=e[c];if(u==null||Number.isNaN(u))continue;let f=lt(u);s.set(f,(s.get(f)||0)+1),a++}if(a===0)return null;let l=0;for(let c of s.values()){let u=c/a;u>0&&(l-=u*(Math.log(u)/i))}return M(l)?((l<0||Object.is(l,-0))&&(l=0),l):null}else{let s=[],a=0;for(let u=0;u<o;u++){let f=e[u];if(f==null||Number.isNaN(f))continue;let p=Number(f);if(!M(p)||p<0)return null;p>0&&(s.push(p),a+=p)}if(s.length===0||a<=0)return null;let l=0,c=s.length;for(let u=0;u<c;u++){let f=s[u]/a;f>0&&(l-=f*(Math.log(f)/i))}return M(l)?((l<0||Object.is(l,-0))&&(l=0),l):null}}function Ne(e,t){if(!e||e.length===0)return null;let n=null,r=e.length;for(let o=0;o<r;o++){let i=zt(e[o],{range:"Int64"});i!==null&&(n=n===null?i:t(n,i))}return n===null?null:n>=Number.St&&n<=Number.K?Number(n):n}function wr(e,t){if(!e||e.length===0)return null;let n=e.length,r=new Array(n),o=new Array(n);for(let s=0;s<n;s++){let a=e[s];r[s]=a?.[0],o[s]=a?.[1]}let i=K(o)[t];return i!==null?r[i]:null}function In(e,t,n={}){if(!e||e.length===0)return[];let r=e.length,{nullify:o=!1}=n,i=V(t);if(!i&&!t)return o?new Array(r).fill(null):[];let s=[];for(let a=0;a<r;a++)(i?t[a]:t)?s.push(e[a]):o&&s.push(null);return s}var Ei,Zn=j(()=>{"use strict";Rt();vt();Qn();mn();tt();Ei={sum:null,product:null,count:0,min:null,max:null,nanMin:null,nanMax:null,minIdx:null,maxIdx:null,mean:null,variance:0,std:0,nullCount:0,nanCount:0,len:0,hasNulls:!1,isNumeric:!1}});function Li(e,t={}){let n=t?.trim?pt(e)??"":e,r=n.length;if(r<2)return!1;let o=n[0],i=n[r-1];return o==="{"&&i==="}"||o==="["&&i==="]"}function te(e,t={}){let n="fallback"in t?t.fallback:e;if(typeof e!="string")return n;let{format:r="json",allowPrimitives:o=!1,trimBeforeParse:i=!1,reviver:s,ndjson:a={},guard:l,onError:c}=t,u=i?e.trim():e;try{let f;if(r==="ndjson"){let{skipInvalidLines:p=!1,maxLines:m,skipLines:y=0}=a,d=[],h=new RegExp(Jo,"g"),g=0,x=0;for(;m===void 0||d.length<m;){let O=h.exec(u),w=(O?u.substring(g,O.index):u.substring(g)).trim();if(O&&(g=h.lastIndex),w===""){if(!O)break;continue}if(x++,x<=y){if(!O)break;continue}if(!o&&!Li(w)){if(!p)throw new N("NDJSON line is not wrapped and primitives are disallowed");if(!O)break;continue}try{d.push(JSON.parse(w,s))}catch(A){if(!p)throw A}if(!O)break}let b=x>y;if(d.length===0&&b&&m!==0)throw new Ht("No valid NDJSON lines processed");f=d}else{if(!o&&!Li(u,{trim:!i}))throw new N("JSON string is not wrapped and primitives are disallowed");f=JSON.parse(u,s)}if(l&&!l(f))throw new N("Parsed value failed guard validation");return f}catch(f){try{c?.(f)}catch{}return n}}function Yt(e={}){let t=e.bigintStrategy??"string",n=e.handleCircular?new WeakSet:null,r=Array.isArray(e.replacer)?e.replacer.map(String):null;return function(i,s){let a=s;if(typeof e.replacer=="function")a=e.replacer.call(this,i,s);else if(r&&i!==""&&!Array.isArray(this)&&!r.includes(i))return;if(a===void 0)return;let l=a===s&&this!=null?this[i]:a;if(typeof e.onCustom=="function"){let f=e.onCustom.call(this,i,l);if(f!==l||f===void 0&&l!==void 0)return f}let c=a!==null&&typeof a=="object"||typeof a=="bigint"?a:l,u=v(c)?Q(c):c;if(u!==null&&typeof u!="object"&&typeof u!="bigint")return a;if(n&&(v(u)||Array.isArray(u))){if(i===""&&(n=new WeakSet),n.has(u))return e.onCircular?e.onCircular.call(this,i,u):"[Circular]";n.add(u)}return typeof u=="bigint"?e.voidBigIntReplacement?a:e.onBigInt?e.onBigInt(u):t==="number"&&Tn(u,{range:{min:BigInt(Number.St),max:BigInt(Number.K)}})?Number(u):u.toString():ot(u)?e.voidTypedArrayReplacement?a:e.onTypedArray?e.onTypedArray(u):Array.from(u):ge(u)?e.voidSetReplacement?a:e.onSet?e.onSet(u):Array.from(u):be(u)?e.voidMapReplacement?a:e.onMap?e.onMap(u):Array.from(u.entries()):mt(u)?e.voidRegExpReplacement?a:e.onRegExp?e.onRegExp(u):u.toString():L(u)?e.voidDateReplacement?a:e.onDate?e.onDate(u):e.formatDate?e.formatDate(u):u.toISOString():Ko(u)?e.onError?e.onError(u):{name:u.name,message:u.message,stack:u.stack}:$o(u)?e.onURLSearchParams?e.onURLSearchParams(u):u.toString():a}}function Tl(e){let t=e.trim().replace(/^\$/,"");if(!t)return[];let n=[],r=/\.\.\[\s*(?:'((?:\\.|[^'])*)'|"((?:\\.|[^"])*)"|(\*))\s*\]|\.\.([^\.\[]+)|\.([\w$-]+|\*)|\[\s*(?:'((?:\\.|[^'])*)'|"((?:\\.|[^"])*)"|(\*)|(-?\d*(?::-?\d*){0,2}))\s*\]/g,o,i=0;for(;(o=r.exec(t))!==null;){if(o.index!==i)return null;i=r.lastIndex;let[,s,a,l,c,u,f,p,m,y]=o,d=s??a,h=f??p;if(d!==void 0)n.push({type:"rec",key:$i(d)});else if(l!==void 0)n.push({type:"rec",key:Ar});else if(c!==void 0)n.push({type:"rec",key:c});else if(u!==void 0)n.push(u===Ar?{type:"wildcard"}:{type:"prop",key:u});else if(h!==void 0)n.push({type:"prop",key:$i(h)});else if(m!==void 0)n.push({type:"wildcard"});else if(y!==void 0)if(y.includes(":")){let[g,x,b]=y.split(":");n.push({type:"slice",start:gt(g)??void 0,end:gt(x)??void 0,step:gt(b)??1})}else{let g=gt(y);if(g===null)return null;n.push({type:"idx",idx:g})}}return i===t.length?n:null}function qi(e,t,n,r=new Set){if(e==null||!Ki(t.key)||typeof e!="object"||r.has(e))return;r.add(e);let o=Array.isArray(e);if(!o&&!v(e))return;t.key===Ar?Gi(e,{type:"wildcard"},n):!o&&Object.prototype.hasOwnProperty.call(e,t.key)&&n.push(e[t.key]);let i=o?e:Object.values(e);for(let s=0;s<i.length;s++)qi(i[s],t,n,r)}function Gi(e,t,n){if(e!=null)switch(t.type){case"prop":v(e)&&Ki(t.key)&&Object.prototype.hasOwnProperty.call(e,t.key)&&n.push(e[t.key]);break;case"idx":{if(!Array.isArray(e))break;let r=t.idx<0?e.length+t.idx:t.idx;r>=0&&r<e.length&&n.push(e[r]);break}case"slice":{if(!Array.isArray(e)||t.step===0)break;let r=t.step??1,o=t.start??(r>0?0:e.length-1),i=Ce(e,{step:r,offsetStart:o,offsetEnd:t.end,nullOnOob:!0});if(i)for(let s=0;s<i.length;s++)n.push(i[s]);break}case"wildcard":{let r=Array.isArray(e)?e:v(e)?Object.values(e):null;if(r)for(let o=0;o<r.length;o++)n.push(r[o]);break}case"rec":qi(e,t,n);break}}function Ji(e,t){if(e==null||Wi(t))return null;let n=e;if(typeof e=="string"){let s=e.trim();if(s==="")return null;let a=te(s,{allowPrimitives:!0,fallback:Vi});if(a===Vi)throw new N(`Invalid JSON string encountered in jsonPathMatch: "${e}"`);n=a}let r=Tl(t);if(r===null)return null;let o=[n];for(let s=0;s<r.length;s++){if(o.length===0)return null;let a=[];for(let l=0;l<o.length;l++)Gi(o[l],r[s],a);o=a}if(o.length===0||o[0]==null)return null;let i=o[0];if(v(i)||Array.isArray(i))try{return JSON.stringify(i,Yt({handleCircular:!0}))}catch{return null}return String(i)}var Vi,Ar,$i,Ki,ne=j(()=>{"use strict";Zn();Rt();vt();mn();tt();Ot();Vi=Symbol("invalid");Ar="*",$i=e=>e.replace(/\\(.)/g,(t,n)=>yi[n]??n),Ki=e=>e!==void 0&&e!=="__proto__"&&e!=="constructor"&&e!=="prototype"});function El(e){return!v(e)||xe(e)?!1:ArrayBuffer.isView(e)?ar(e)||Go(e)||qo(e):we(e)||Ae(e)}function Xi(e,t){if(e==null)return!1;try{if(El(e))return!0;if(t?.strict)return!1;if(typeof e=="string")return!0;if(ArrayBuffer.isView(e))return!xe(e);if(Array.isArray(e))return H(e,zi)}catch{return!1}return!1}function ke(e,t){if(e==null)return null;try{if(ar(e))return e;if(xe(e))return null;if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);if(we(e)||Ae(e))return new Uint8Array(e);if(t?.strict)return null;if(typeof e=="string")return Wt.encode(e);if(Array.isArray(e)&&H(e,zi))return Uint8Array.from(e)}catch{return null}return null}var Il,zi,Sr=j(()=>{"use strict";Rt();vt();Zn();Ot();Il={range:"UInt8"},zi=e=>At(e,Il)});function Wi(e){let t=Q(e);return typeof t=="string"?t.trim().length===0:!1}function Yi(e,t="both"){return t==="start"?e.trimStart():t==="end"?e.trimEnd():e.trim()}function pt(e,t=null,n={}){let{mode:r="both",returnStringOnNull:o=!1,maxScanStart:i=1,maxScanEnd:s=1,maxMatchesStart:a=1,maxMatchesEnd:l=1,trimFirst:c=!1,stringOptions:u}=n;if(e==null)return o?"":null;let f=R=>o||R.length>0?R:null;if(t==null)return f(Yi(e,r));let p=c?Yi(e,r):e,m=p.length;if(m===0)return o?"":null;let y=mt(t);if(!y&&typeof t!="string"||typeof t=="string"&&t.length===0)return f(p);let{literal:d=!1,caseInsensitive:h=!1}=u??{},g=y?t:d?Tt(t):`[${Tt(t)}]+`,x=y&&t.ignoreCase||h,b=ss(p,g,0,{asciiCaseInsensitive:x},()=>null),O=b.length;if(O===0)return f(p);let w=new Uint8Array(m),A=!1,I=(R,F,E)=>{if(E===0)return;let _=0,P=R?0:m,W=0,B=R?0:O-1,st=R?O:-1,kt=R?1:-1;for(let ct=B;ct!==st;ct+=kt){let ft=b[ct],$n=R?ft.start-P:P-ft.end;if($n>0&&(_+=$n,F!==null&&F>=0&&_>=F)||(($n>0||d||W===0)&&W++,E!==null&&E>=0&&W>E))break;for(let ln=ft.start;ln<ft.end;ln++)w[ln]=1;A=!0,P=R?ft.end:ft.start}};if((r==="both"||r==="start")&&I(!0,i,a),(r==="both"||r==="end")&&I(!1,s,l),!A)return f(p);let C="";for(let R=0;R<m;R++)w[R]===0&&(C+=p[R]);return f(C)}function lt(e,{depth:t=0,maxDepth:n=50}={}){if(t>n)return"v:circular";if(e===null)return"v:null";if(e===void 0)return"v:undefined";if(e=Q(e),L(e))return`d:${e.getTime()}`;if(ot(e)){let o=e.toString();return`u:${e.constructor.name}:${o.length}:${o}`}if(Array.isArray(e)){let o=e.length,i=new Array(o),s={depth:t+1,maxDepth:n};for(let a=0;a<o;a++)i[a]=lt(e[a],s);return`a:[${i.join(Yn)}]`}if(ge(e)){let o=Array.from(e),i=o.length,s=new Array(i),a={depth:t+1,maxDepth:n};for(let l=0;l<i;l++)s[l]=lt(o[l],a);return s.sort(),`set:[${s.join(Yn)}]`}if(be(e)){let o=Array.from(e.keys()),i=o.length,s=new Array(i),a={depth:t+1,maxDepth:n};for(let l=0;l<i;l++){let c=o[l],u;try{u=e.get(c)}catch{u="v:error"}s[l]=`${lt(c,a)}${Xn}${lt(u,a)}`}return s.sort(),`map:{${s.join(Yn)}}`}if(typeof e=="object"&&typeof e.toJSON=="function")try{let o=e.toJSON();if(o!==e)return`j:${lt(o,{depth:t+1,maxDepth:n})}`}catch{}if(mt(e)){let o=e.toString();return`r:${o.length}:${o}`}if(Ft(e)){let o=Object.keys(e).sort(),i=o.length,s=new Array(i),a={depth:t+1,maxDepth:n};for(let l=0;l<i;l++){let c=o[l],u;try{u=e[c]}catch{u="v:error"}s[l]=`${lt(c,a)}${Xn}${lt(u,a)}`}return`o:{${s.join(Yn)}}`}if(typeof e=="function"){let o=e.toString();return`f:${o.length}:${o}`}if(typeof e=="string")return`s:${e.length}:${e}`;if(typeof e=="symbol"){let o=e.toString();return`y:${o.length}:${o}`}if(typeof e=="number"||typeof e=="boolean"||typeof e=="bigint")return`${typeof e}:${e}`;let r=String(e);return`${typeof e}:${r.length}:${r}`}function _l(e){if(e==null)return[];let t=String(e);if(!t)return[];let r=t.normalize("NFC").replace(Dl,"$1").match(Cl)||[],o=[];for(let i=0;i<r.length;i++){let s=r[i];Rl.has(s)||o.push(s)}return o}function Or(e,t=0){let n=e.codePointAt(t);return n!=null&&n>65535?2:1}function Cn(e,t){let n=_l(e),r=n.length;if(r===0)return"";let{format:o}=t??{};if(o==="camel"||o==="pascal"||o==="title"){let i=o==="title"?" ":"",s=new Array(r);for(let a=0;a<r;a++){let l=n[a];if(a===0&&o==="camel")s[a]=l.toLowerCase();else{let c=Or(l,0);s[a]=l.slice(0,c).toUpperCase()+l.slice(c).toLowerCase()}}return s.join(i)}if(o==="kebab"||o==="snake"){let i=o==="kebab"?"-":"_",s=new Array(r);for(let a=0;a<r;a++)s[a]=n[a].toLowerCase();return s.join(i)}return n.join(" ")}function es(e){return typeof e!="string"&&(e=String(e)),Wt.encode(e)}function jl(e){let t=ke(e);if(!t)return"";if(ts&&typeof Uint8Array.prototype.toBase64=="function")return t.toBase64();if(Me)return ee.from(t).toString("base64");let n="",r=t.length;for(let o=0;o<r;o+=Hi){let i=t.subarray(o,o+Hi);n+=String.fromCharCode.apply(null,i)}return btoa(n)}function vl(e){if(typeof e!="string"&&(e=String(e)),Me)return ee.from(e,"utf-8").toString("hex");let t=es(e),n=t.length,r="";for(let o=0;o<n;o++)r+=ns[t[o]];return r}function Bl(e){typeof e!="string"&&(e=String(e));let t=es(e);return jl(t)}function rs(e,t){if(e==null)return null;let n=Pl[t];if(!n)throw new Error(`Unsupported encoding: '${t}'. Supported encodings are 'hex' and 'base64'.`);return n(String(e))}function Vl(e){typeof e!="string"&&(e=String(e));let t=e.replace(Ml,r=>kl[r]),n=t.length%4;return n===0?t:t.padEnd(t.length+(4-n),"=")}function Ll(e,t=!0){if(typeof e!="string"&&(e=String(e)),e!==""&&(e.length%4!==0||!Ul.test(e)))throw new Error("Invalid base64 encoding format");if(ts)return Uint8Array.fromBase64(e,{strict:t});if(Me)return new Uint8Array(ee.from(e,"base64"));let n=atob(e),r=n.length,o=new Uint8Array(r);for(let i=0;i<r;i++)o[i]=n.charCodeAt(i);return o}function $l(e){typeof e!="string"&&(e=String(e));let t=e.trim();if(t.length%2!==0||!Fl.test(t))throw new Error("Invalid hex string format");if(Nl)return Uint8Array.fromHex(t);if(Me){let r=ee.from(t,"hex");if(r.length!==t.length/2)throw new Error("Invalid hex string format");return new Uint8Array(r)}let n=new Uint8Array(t.length/2);for(let r=0;r<n.length;r++){let o=parseInt(t.substring(r*2,r*2+2),16);if(Number.isNaN(o))throw new Error("Invalid hex string format");n[r]=o}return n}function Kl(e,t=!0){if(e==null)return null;try{let n=$l(e);return(t?ur:lr).decode(n)}catch(n){if(t)throw n;return null}}function ql(e,t=!0){if(e==null)return null;try{let n=typeof e=="string"?e.trim():String(e).trim(),r=Vl(n),o=Ll(r,t);return(t?ur:lr).decode(o)}catch(n){if(t)throw n;return null}}function os(e,t,n={}){if(e==null)return null;let r=Gl[t];if(!r)throw new Error(`Unsupported encoding: '${t}'. Supported encodings are 'hex' and 'base64'.`);let o=typeof n=="boolean"?n:n.strict??!0;return r(String(e),o)}function Xl(e,t={}){if(!At(e,{range:"UInt16"}))return!1;let{type:n="all"}=t;switch(n){case"high":return e>=pr&&e<=mi;case"low":return e>=pi&&e<=yr;case"all":return e>=pr&&e<=yr;default:return!1}}function Zi(e){let t=e.codePointAt(0),n=t<=ci||t===fi,r=e.length===1&&Xl(t);if(n||r){let o=dr[t];if(o)return o;let i=t.toString(16);return n?`\\x${i.padStart(2,"0")}`:`\\u${i.padStart(4,"0")}`}return"\\"+e}function Tt(e,t){let n=Q(e);if(n==null)return"";let r=mt(n)?n.source:typeof n=="string"?n:String(n);return(t?.mode??"tc39")==="tc39"?typeof RegExp.escape=="function"&&!Jl.test(r)?RegExp.escape(r):r.replace(Wl,Zi):r.replace(zl,Zi)}function pn(e,t,n){if(e==null||t==null)return null;let r=typeof e=="string"?e:String(e),o=n?.global??!1;try{let i=mt(t),s=i?t.source:typeof t=="string"?t:String(t),a=i?t.flags.replace(/y/g,""):"";if(o?a.includes("g")||(a+="g"):a=a.replace(/g/g,""),n?.asciiCaseInsensitive!==void 0&&(a=n.asciiCaseInsensitive?a.includes("i")?a:a+"i":a.replace(/i/g,"")),(s.includes("\\p{")||s.includes("\\P{"))&&!a.includes("u")&&!a.includes("v"))try{let c=new RegExp(s,a+"u");return c.lastIndex=0,{reg:c,input:r}}catch{try{let c=new RegExp(s,a+"v");return c.lastIndex=0,{reg:c,input:r}}catch{}}let l=new RegExp(s,a);return l.lastIndex=0,{reg:l,input:r}}catch{return null}}function Qi(e){let t=Object.create(null);e.index!==void 0&&Object.defineProperty(t,"_index",{value:String(e.index),writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(t,"_length",{value:e.length,writable:!0,enumerable:!1,configurable:!0});for(let n=0;n<e.length;n++)t[String(n)]=e[n]!==void 0?e[n]:null;if(e.groups)for(let n in e.groups){let r=e.groups[n];t[n]=r!==void 0?r:null}return t}function Tr(e,t){if(typeof t=="string")return t in e?e[t]:null;let n=Number(t);if(Number.isNaN(n))return null;let r=Math.trunc(n);if(r>=0)return e[String(r)]??null;let i=(e.It??0)+r;return i>=1?e[String(i)]??null:null}function ss(e,t,n,r,o){let{literal:i=!1,mode:s,asciiCaseInsensitive:a=!1}=r??{},l=i?Tt(t,{mode:s}):t,u=pn(e,l,{global:!0,asciiCaseInsensitive:a})?.reg??null;if(!u)return[];let f=[];u.lastIndex=0;let p;for(;(p=u.exec(e))!==null;){let m=p.index,y=u.lastIndex,d=o(p,m,y);if(f.push({start:m,end:y,patternIndex:n,payload:d}),m===y){if(m===e.length)break;u.lastIndex=m+Or(e,m)}}return f}function as(e){if(e.length<=1)return e;e.sort((o,i)=>{if(o.start!==i.start)return o.start-i.start;let s=o.patternIndex??o.i??0,a=i.patternIndex??i.i??0;return s-a});let t=[],n=0,r=e.length;for(let o=0;o<r;o++){let i=e[o];i.start>=n&&(t.push(i),n=i.end)}return t}function ls(e,t,n,r,o){let{overlapping:i=!1,leftmost:s,...a}=n??{},l=s??!0;if(i&&s)throw new N("Cannot specify both 'overlapping' and 'leftmost' as true.");if(e==null||t==null)return null;let c=bt(t),u=c.length;if(u===0)return[];if(i){let m=new Array(u);for(let y=0;y<u;y++)m[y]=r(c[y]);return m}let f=[];for(let m=0;m<u;m++){let y=Ue(e,c[m],{...a,global:!1});if(y&&y[0]&&y[0].At!=null){let d=Number(y[0].At),h=y[0][0]?.length??0;f.push({i:m,start:d,end:d+h,payload:o(y[0],d)})}}let p=new Array(u).fill(null);if(f.length===0)return p;if(l){let m=as(f);for(let y=0;y<m.length;y++){let d=m[y];p[d.i]=d.payload}}else{let m=[];f.sort((h,g)=>h.i-g.i);let y=f.length;for(let h=0;h<y;h++){let g=f[h],x=!1,b=m.length;for(let O=0;O<b;O++){let w=m[O],A=!1;if(g.start===g.end&&w.start===w.end?A=g.start===w.start:w.start===w.end?A=w.start>=g.start&&w.start<g.end:g.start===g.end?A=g.start>=w.start&&g.start<w.end:A=g.start<w.end&&g.end>w.start,A){x=!0;break}}x||m.push(g)}let d=m.length;for(let h=0;h<d;h++){let g=m[h];p[g.i]=g.payload}}return p}function Ue(e,t,n){let r=pn(e,t,n);if(!r)return null;if(!n?.global){let s=r.input.match(r.reg);return s?[Qi(s)]:null}let o=Array.from(r.input.matchAll(r.reg));if(o.length===0)return null;let i=new Array(o.length);for(let s=0;s<o.length;s++)i[s]=Qi(o[s]);return i}function Er(e,t,n){let r=Ue(e,t,n);return r?Tr(r[0],n?.groupIndex??1):null}function us(e,t,n){let r=Ue(e,t,{...n,global:!0});if(!r)return null;let o=n?.groupIndex??0,i=new Array(r.length);for(let s=0;s<r.length;s++)i[s]=Tr(r[s],o);return i}function cs(e,t,n){return Ue(e,t,n)?.[0]??null}function fs(e,t,n){let r=n?.groupIndex??0;return ls(e,t,n,o=>Er(e,o,{...n,groupIndex:r}),o=>Tr(o,r))}function Ir(e,t){return mt(e)?new RegExp(Tt(e,{mode:t}),e.flags):Tt(e,{mode:t})}function Dn(e,t,n){if(e==null||t==null)return null;let{literal:r=!1,mode:o,...i}=n??{},s=r?Ir(t,o):t,a=pn(e,s,{...i,global:!1});if(!a)return null;let l=a.input.match(a.reg);return!l||l.index==null?null:Wt.encode(a.input.slice(0,l.index)).length}function ms(e,t,n){if(n?.literal){if(e==null||t==null)return null;let r=bt(t),o=new Array(r.length);for(let i=0;i<r.length;i++)o[i]=Dn(e,r[i],n);return o}return ls(e,t,n,r=>Dn(e,r,n),(r,o)=>Wt.encode(e.slice(0,o)).length)}function ps(e,t,n){if(e==null||t==null)return null;let{literal:r=!0,inclusive:o=!1,limit:i,exact:s=!1,strict:a=!1,mode:l,...c}=n??{},u=r?Ir(t,l):t,f=pn(e,u,{...c,global:!0});if(!f)return null;let{reg:p}=f;p.lastIndex=0;let m=[],y=0,d=0,h=i!=null&&i>=0?i:1/0,g;for(;d<h&&(g=p.exec(e))!==null;){let b=g.index,O=p.lastIndex;if(b===O){if(b===e.length||b>0&&b>=y&&(m.push(e.slice(y,b)),d++,y=b,d>=h))break;p.lastIndex=b+Or(e,b);continue}m.push(e.slice(y,o?O:b)),y=O,d++}if(m.push(e.slice(y)),i==null||i<0)return m;let x=i+1;if(a&&m.length<x)throw new N(`split exact error: expected string to split into at least ${x} parts, but got ${m.length}`);if(s)for(;m.length<x;)m.push(null);return m}function ys(e,t,n,r,o,i){return e.includes("$")?e.replace(/\$\$|\$([$'`&]|\d{1,2}|<[^>]+>)/g,(s,a)=>{if(s==="$$"||a==="$")return"$";if(!a)return s;if(a==="&")return t;if(a==="`")return r.slice(0,n);if(a==="'")return r.slice(n+t.length);if(a.startsWith("<"))return i?i[a.slice(1,-1)]??"":s;let l=Number(a);if(l>0&&l<=o.length)return o[l-1]??"";if(a.length===2){let c=Number(a[0]);if(c>0&&c<=o.length)return(o[c-1]??"")+a[1]}return s}):e}function re(e,t,n,r){if(e==null||t==null||n==null)return null;let o=typeof e=="string"?e:String(e),{literal:i=!1,n:s,mode:a,...l}=r??{},c=s??(l?.global?1/0:1),u=M(c,{allowNonFiniteNumbers:!0,allowNaN:!1})?Math.trunc(c):1;if(u===0)return o;let f=i?Ir(t,a):t,p=pn(o,f,{...l,global:l?.global??u!==1});if(!p)return o;let{reg:m}=p,y=typeof n=="function";if(u===1||u<0||u===1/0){if(i&&!y){let g=String(n);return o.replace(m,()=>g)}return o.replace(m,n)}let d=0,h=y?"":String(n);return o.replace(m,(...g)=>{if(d++>=u)return g[0];if(y)return String(n(...g));if(i)return h;let x=g.length,b=typeof g[x-1]=="object"&&g[x-1]!==null,O=b?g[x-1]:void 0,w=b?g[x-3]:g[x-2],A=g.slice(1,b?x-3:x-2);return ys(h,g[0],w,o,A,O)})}function ds(e,t,n,r){if(e==null||t==null)return null;let o=typeof e=="string"?e:String(e),i=Ft(t);if(!i&&!Array.isArray(t))return o;let s=i?Object.keys(t):t,a=s.length;if(a===0)return o;let l=null,c=null;if(i)l=Object.values(t);else if(Array.isArray(n))if(n.length===1&&a>1)c=n[0];else{if(n.length!==a)throw new N(`replaceMany length mismatch: expected ${a} replacement strings, got ${n.length}`);l=n}else if(n!=null)c=n;else return o;let u=[];for(let d=0;d<a;d++){let h=s[d],g=l?l[d]:c;if(h==null||g==null)continue;let x=ss(o,h,d,r,(b,O)=>{let w=Array.prototype.slice.call(b,1);if(typeof g=="function"){let I=[b[0],...w,O,o];return b.groups!==void 0&&I.push(b.groups),String(g(...I))}let A=String(g);return r?.literal?A:ys(A,b[0],O,o,w,b.groups)});for(let b=0;b<x.length;b++)u.push(x[b])}if(u.length===0)return o;let f=as(u),p="",m=0,y=f.length;for(let d=0;d<y;d++){let h=f[d];p+=o.slice(m,h.start)+h.payload,m=h.end}return p+=o.slice(m),p}var Dl,Cl,Rl,ee,Me,Nl,ts,Hi,ns,kl,Ml,Ul,Fl,Wu,Pl,Gl,Jl,is,Wl,zl,mn=j(()=>{"use strict";Rt();Zn();ne();Sr();vt();Ot();tt();Dl=/(\p{L})['’]+(?=\p{L})/gu,Cl=new RegExp(["[\\p{Lu}\\p{M}]+s(?![\\p{Ll}\\p{M}])","[\\p{Lu}\\p{M}]+(?=[\\p{Lu}\\p{M}][\\p{Ll}\\p{M}])","[\\p{Lu}\\p{M}]+[\\p{Ll}\\p{M}]*","[\\p{Ll}\\p{M}]+","\\p{N}+","[\\p{L}\\p{M}]+"].join("|"),"gu"),Rl=new Set(["__proto__","proto","constructor","prototype"]);ee=typeof globalThis<"u"?globalThis.Buffer:void 0,Me=typeof ee<"u",Nl=typeof Uint8Array<"u"&&typeof Uint8Array.fromHex=="function",ts=typeof Uint8Array<"u"&&typeof Uint8Array.fromBase64=="function",Hi=8192,ns=new Array(256);for(let e=0;e<256;e++)ns[e]=e.toString(16).padStart(2,"0");kl={"-":"+",_:"/"},Ml=/[-_]/g,Ul=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,Fl=/^[0-9a-fA-F]*$/,Wu=Yt({handleCircular:!0});Pl={hex:vl,base64:Bl};Gl={hex:Kl,base64:ql};Jl=/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,is="\\x00-\\x1F\\x7F\\u{D800}-\\u{DFFF}",Wl=new RegExp(`[${is}\\\\^$*+?.()|[\\]{}/#,=<>&!%:;@~'"\`-]`,"gu"),zl=new RegExp(`[${is}]|[\\x20-\\x2F\\x3A-\\x40\\x5B-\\x5E\\x5F\\x60\\x7B-\\x7E]`,"gu")});function Zl(e){let t=hs.get(e);return t||(t=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",fractionalSecondDigits:3}),hs.set(e,t)),t}function Ql(e,t){let n=`${e}_${t}`,r=gs.get(n);return r||(r=new Intl.DateTimeFormat(e,{timeZoneName:"short",timeZone:t}),gs.set(n,r)),r}function tu(e){let t=bs.get(e);if(t===void 0){try{Intl.DateTimeFormat(void 0,{timeZone:e}),t=!0}catch{t=!1}bs.set(e,t)}return t}function je(e){let t=!e||e==="local"?Intl.DateTimeFormat().resolvedOptions().timeZone:e;return tu(t)?t:"UTC"}function nt(e,t=0,n=1,r=0,o=0,i=0,s=0){let a=new Date(0);return a.setUTCFullYear(e,t,n),a.setUTCHours(r,o,i,s),a}function ve(e,t){let n=je(t);if(n.toUpperCase()==="UTC")return{year:e.getUTCFullYear(),month:e.getUTCMonth()+1,day:e.getUTCDate(),hour:e.getUTCHours(),minute:e.getUTCMinutes(),second:e.getUTCSeconds(),ms:e.getUTCMilliseconds(),dayOfWeek:e.getUTCDay(),timeZone:"UTC"};let o=Zl(n).formatToParts(e),i={year:"0",month:"0",day:"0",hour:"0",minute:"0",second:"0",fractionalSecond:"0"};for(let p=0,m=o.length;p<m;p++){let y=o[p];y.type in i&&(i[y.type]=y.value)}let s=parseInt(i.year,10),a=parseInt(i.month,10),l=parseInt(i.day,10),c=parseInt(i.hour,10);c===24&&(c=0);let u=Math.round(parseFloat("0."+i.fractionalSecond)*1e3)||0,f=nt(s,a-1,l).getUTCDay();return{year:s,month:a,day:l,hour:c,minute:parseInt(i.minute,10),second:parseInt(i.second,10),ms:u,dayOfWeek:f,timeZone:n}}function oe(e,t){if(t.toUpperCase()==="UTC")return 0;let n=ve(e,t),r=nt(n.year,n.month-1,n.day,n.hour,n.minute,n.second,n.ms).getTime();return Math.round((r-e.getTime())/Mt)}function X(e,t){let n=Q(e);if(n==null)return null;let r=null;if(L(n))r=n;else if(typeof n=="number"||typeof n=="bigint")r=new Date(nu(n));else if(typeof n=="string"){let o=n.trim();if(o.length===0)return null;r=new Date(o)}return!r||!L(r)?null:t?.dateOnly?nt(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate()):r}function Be(e){let t=Q(e);if(t==null)return null;let n=null;if(typeof t=="string"){let o=t.trim();if(Yl.test(o)){let i=Hl.test(o);n=X(`1970-01-01T${o}${i?"":"Z"}`)}}let r=n??X(t);return r?ie(r,{format:"%H:%M:%S.%ms"}):null}function ws(e,t="ms"){let n=e.getTime();switch(t){case"s":return Math.floor(n/_t);case"ms":return n;case"us":return BigInt(n)*cr;case"ns":return BigInt(n)*fr}}function nu(e){if(typeof e=="bigint"){let n=e<0n?-e:e;return n<=30000000000n?Number(e)*_t:n<=100000000000000n?Number(e):n<=100000000000000000n?Number(e/cr):Number(e/fr)}let t=Math.abs(e);return t<=3e10?e*_t:t<=1e14?e:t<=1e17?Math.floor(e/Wn):Math.floor(e/zn)}function As(e){if(!L(e))return null;let t=nt(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()).getTime(),n=nt(e.getUTCFullYear(),0,1).getTime();return Math.floor((t-n)/St)+1}function xs(e,t,n,r="week"){let o=nt(e,t-1,n);if(o.setUTCDate(o.getUTCDate()+4-(o.getUTCDay()||7)),r==="year")return o.getUTCFullYear();let i=As(o);return i!=null?Math.floor((i-1)/7)+1:null}function Os(e){return e.replace(/%[FTRDh]/g,t=>ru[t]||t)}function ie(e,{format:t,locale:n,timeZone:r="UTC"}){if(!L(e)||typeof t!="string")return"";let o=je(r),i=n&&n.trim()||Intl.DateTimeFormat().resolvedOptions().locale||"en-US",s=Os(t),a=null,l=()=>a??(a=ve(e,o));return s.replace(Ss,(c,u)=>{if(u==="%")return"%";let f=Dr[u];return f?f.c(e,i,o,l()):c})}function ou(e){let t=e.replace(":",""),n=t[0]==="+"?1:-1,r=parseInt(t.slice(1,3),10)||0,o=parseInt(t.slice(3,5),10)||0;return n*(r*60+o)}function Ts(e,{format:t,strict:n=!0,defaultTimeZone:r="UTC"}){if(typeof e!="string"||typeof t!="string")return null;let o=Os(t),i=[],s=0,a="";o.replace(Ss,(m,y,d)=>{if(a+=Tt(o.slice(s,d)),s=d+m.length,y==="%")return a+="%",m;let h=Dr[y];return h?.g?(i.push(h),a+=`(${h.g})`):a+=Tt(m),m}),a+=Tt(o.slice(s));let l=e.match(new RegExp(`^\\s*${a}\\s*$`));if(!l)return n?null:X(e);let c={year:1970,month:1,day:1,hour:0,minute:0,second:0,ms:0,offset:null},u=null,f=!1;for(let m=0,y=i.length;m<y;m++){let d=l[m+1],h=i[m],g=h.D?h.D(d):parseInt(d,10);h.u==="j"&&(f=!0),h.x==="ampm"?u=g:h.x==="offset"?c.offset=g:h.x&&(c[h.x]=g)}if(u==="PM"&&c.hour<12&&(c.hour+=12),u==="AM"&&c.hour===12&&(c.hour=0),f){if(c.day<1)return null;let m=nt(c.year,0,c.day);if(m.getUTCFullYear()!==c.year)return null;c.month=m.getUTCMonth()+1,c.day=m.getUTCDate()}let p=nt(c.year,c.month-1,c.day,c.hour,c.minute,c.second,c.ms);if(!L(p)||p.getUTCFullYear()!==c.year||p.getUTCMonth()+1!==c.month||p.getUTCDate()!==c.day||p.getUTCHours()!==c.hour||p.getUTCMinutes()!==c.minute||p.getUTCSeconds()!==c.second||p.getUTCMilliseconds()!==c.ms)return null;if(c.offset)p=new Date(p.getTime()-ou(c.offset)*Mt);else if(r.toUpperCase()!=="UTC"){let m=je(r);p=new Date(p.getTime()-oe(p,m)*Mt)}return L(p)?p:null}function Es(e,t=[]){let n=new Set;if(!e)return n;let r=t.length>0;for(let o of e){let i=X(o,{dateOnly:!0});!i||r&&t.includes(i.getUTCDay())||n.add(i.getTime())}return n}function Fe(e,t,n){return t.length>0&&t.includes(e.getUTCDay())||n.has(e.getTime())}function Is(e,t,{excludeWeekdays:n=[],holidays:r=[],roll:o}={}){if(!At(t))throw new at(`The offset parameter 'n' must be a whole integer. Received: ${t}`);let i=Es(r,n);if(n.length===0&&i.size===0&&!o)return t;if(7-n.length<=0)throw new at("All weekdays are excluded; cannot offset.");let s=nt(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()),a=new Date(s.getTime());if(o&&Fe(a,n,i)){if(o==="raise")throw new at("Start date falls on an excluded day or holiday.");let l=o==="forward"?1:-1;for(;Fe(a,n,i);)a.setUTCDate(a.getUTCDate()+l)}if(t!==0){let l=t>0?1:-1,c=Math.abs(t),u=0;for(;u<c;)a.setUTCDate(a.getUTCDate()+l),Fe(a,n,i)||u++}return Math.round((a.getTime()-s.getTime())/St)}function Ds(e,t={}){if(!L(e))return null;let n=t.excludeWeekdays??[0,6],r=Es(t.holidays,n),o=nt(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate());return!Fe(o,n,r)}function Cr(e,t,n){let r=je(t),o=n?.type??"total",i;if(o==="total")i=oe(e,r);else{let p=ve(e,r).year,m=oe(nt(p,0,1),r),y=oe(nt(p,6,1),r),d=Math.min(m,y);i=o==="daylightSavingTime"?oe(e,r)-d:d}let s=n?.format??"milliseconds";if(s==="minutes")return i;if(s==="hours")return i/60;if(s==="milliseconds")return i*Mt;let a=i>=0?"+":"-",l=Math.abs(i),c=String(Math.floor(l/60)).padStart(2,"0"),u=String(l%60).padStart(2,"0");return s==="iso"?`${a}${c}:${u}`:`${a}${c}${u}`}function Rn(e,t,n,r=!1){let o=e??t;return o<0?n+(r?1:0)+o:o}function Cs(e,t={}){let n=ve(e,t?.timeZone??void 0),r=t?.year??n.year,o=Rn(t?.month,n.month,12,!0)-1,i=nt(r,o+1,0).getUTCDate(),s=Rn(t?.day,n.day,i,!0),a=Rn(t?.hour,n.hour,24),l=Rn(t?.minute,n.minute,60),c=Rn(t?.second,n.second,60),u=Rn(t?.ms,n.ms,1e3);return nt(r,o,s,a,l,c,u)}var Yl,Hl,hs,gs,bs,Dr,eu,Ss,ru,Qn=j(()=>{"use strict";mn();tt();Rt();vt();Ot();Yl=/^\d{2}:\d{2}/,Hl=/(?:Z|[+-]\d{2}(?::?\d{2})?)$/i,hs=new Map;gs=new Map;bs=new Map;Dr={Y:{u:"Y",c:(e,t,n,r)=>{let o=r.year;return o>=0?String(o).padStart(4,"0"):"-"+String(Math.abs(o)).padStart(4,"0")},g:"[+-]?\\d{4,}",x:"year"},y:{u:"y",c:(e,t,n,r)=>String(Math.abs(r.year)%100).padStart(2,"0"),g:"\\d{2}",x:"year",D:e=>{let t=parseInt(e,10);return t+(t>=69?1900:2e3)}},m:{u:"m",c:(e,t,n,r)=>String(r.month).padStart(2,"0"),g:"\\d{2}",x:"month"},d:{u:"d",c:(e,t,n,r)=>String(r.day).padStart(2,"0"),g:"\\d{2}",x:"day"},e:{u:"e",c:(e,t,n,r)=>String(r.day).padStart(2," "),g:"\\s?\\d{1,2}",x:"day"},H:{u:"H",c:(e,t,n,r)=>String(r.hour).padStart(2,"0"),g:"\\d{2}",x:"hour"},I:{u:"I",c:(e,t,n,r)=>String(r.hour%12||12).padStart(2,"0"),g:"\\d{2}",x:"hour"},p:{u:"p",c:(e,t,n,r)=>r.hour>=12?"PM":"AM",g:"AM|PM|am|pm",x:"ampm",D:e=>e.toUpperCase()},M:{u:"M",c:(e,t,n,r)=>String(r.minute).padStart(2,"0"),g:"\\d{2}",x:"minute"},S:{u:"S",c:(e,t,n,r)=>String(r.second).padStart(2,"0"),g:"\\d{2}",x:"second"},A:{u:"A",c:(e,t,n)=>e.toLocaleDateString(t,{weekday:"long",timeZone:n})},a:{u:"a",c:(e,t,n)=>e.toLocaleDateString(t,{weekday:"short",timeZone:n})},B:{u:"B",c:(e,t,n)=>e.toLocaleDateString(t,{month:"long",timeZone:n})},b:{u:"b",c:(e,t,n)=>e.toLocaleDateString(t,{month:"short",timeZone:n})},j:{u:"j",c:(e,t,n,r)=>String(As(nt(r.year,r.month-1,r.day))??1).padStart(3,"0"),g:"\\d{3}",x:"day",D:e=>parseInt(e,10)},u:{u:"u",c:(e,t,n,r)=>String(r.dayOfWeek||7)},w:{u:"w",c:(e,t,n,r)=>String(r.dayOfWeek)},V:{u:"V",c:(e,t,n,r)=>String(xs(r.year,r.month,r.day,"week")??1).padStart(2,"0"),g:"\\d{2}",D:e=>parseInt(e,10)},G:{u:"G",c:(e,t,n,r)=>String(xs(r.year,r.month,r.day,"year")??r.year).padStart(4,"0"),g:"[+-]?\\d{4,}",D:e=>parseInt(e,10)},Z:{u:"Z",c:(e,t,n)=>{if(n.toUpperCase()==="UTC")return"UTC";let r=Ql(t,n).formatToParts(e);for(let o=0,i=r.length;o<i;o++)if(r[o].type==="timeZoneName")return r[o].value;return"UTC"}},z:{u:"z",c:(e,t,n)=>Cr(e,n,{format:"basic"}),g:"[+-]\\d{2}(?::?\\d{2})?",x:"offset",D:e=>e.replace(":","")},ms:{u:"ms",c:(e,t,n,r)=>String(r.ms).padStart(3,"0"),g:"\\d{1,3}",x:"ms",D:e=>parseInt(e.padEnd(3,"0").slice(0,3),10)},f:{u:"f",c:(e,t,n,r)=>String(r.ms).padStart(3,"0").padEnd(6,"0"),g:"\\d{1,9}",x:"ms",D:e=>parseInt(e.padEnd(6,"0").slice(0,3),10)}},eu=Object.keys(Dr).concat("%").sort((e,t)=>t.length-e.length),Ss=new RegExp("%("+eu.join("|")+")","g"),ru={"%F":"%Y-%m-%d","%T":"%H:%M:%S","%R":"%H:%M","%D":"%m/%d/%y","%h":"%b"}});var Z,Zt,_n,Bt,Pt,yn,Vt,dn,Pe=j(()=>{"use strict";Z=class e{matches(t){if(t==null)return!1;if(t instanceof e)return!!(this.equals(t)||this.name.startsWith("Decimal")&&t.name.startsWith("Decimal")&&t.precision===void 0&&t.scale===void 0);if(typeof t=="function"){if(t.prototype instanceof e)return this instanceof t;if(t.name==="Struct"||t.name==="StructType")return this.name==="Struct";if(t.name==="ArrayDataType"||t.name==="ArrayType"||t===Array)return this.name==="Array";try{let n=t();if(n instanceof e)return this.constructor===n.constructor}catch{}}return!1}get isNumeric(){return!1}get isInteger(){return!1}get isFloat(){return!1}get isSigned(){return!1}get isUnsigned(){return!1}get isTemporal(){return!1}get isNested(){return!1}get isBoolean(){return!1}get isString(){return!1}get isUtf8(){return!1}get isObject(){return!1}get isNull(){return!1}get isBinary(){return!1}},Zt=class extends Z{get isNumeric(){return!0}},_n=class extends Zt{get isInteger(){return!0}},Bt=class extends _n{get isSigned(){return!0}},Pt=class extends _n{get isUnsigned(){return!0}},yn=class extends Zt{get isFloat(){return!0}},Vt=class extends Z{get isTemporal(){return!0}},dn=class extends Z{get isNested(){return!0}}});var Rr,Rs,_r,_s,Nr,yt,kr,Ve,Mr,Ns,Ur,ks,Fr,Ms,jr,Us,Nn,Fs,kn,Le,Qt,vr,Un,Br,$e,Pr,js,Vr,vs,Lr,Bs,$r,Ps,Lt,Ke,Kr,Vs,Et,Ls,Mn,$s,se,Ks,Fn=j(()=>{"use strict";Pe();it();Rr=class extends Bt{constructor(){super(...arguments);T(this,"name","Int8")}coerce(n){return gt(n,{range:"Int8"})}equals(n){return n.name==="Int8"}allocate(n){return new Int8Array(n)}},Rs=new Rr,_r=class extends Bt{constructor(){super(...arguments);T(this,"name","Int16")}coerce(n){return gt(n,{range:"Int16"})}equals(n){return n.name==="Int16"}allocate(n){return new Int16Array(n)}},_s=new _r,Nr=class extends Bt{constructor(){super(...arguments);T(this,"name","Int32")}coerce(n){return gt(n,{range:"Int32"})}equals(n){return n.name==="Int32"}allocate(n){return new Int32Array(n)}},yt=new Nr,kr=class extends Bt{constructor(){super(...arguments);T(this,"name","Int64")}coerce(n){return zt(n,{truncate:!0})}equals(n){return n.name==="Int64"}allocate(n){return new BigInt64Array(n)}},Ve=new kr,Mr=class extends Pt{constructor(){super(...arguments);T(this,"name","UInt8")}coerce(n){return gt(n,{range:"UInt8"})}equals(n){return n.name==="UInt8"}allocate(n){return new Uint8Array(n)}},Ns=new Mr,Ur=class extends Pt{constructor(){super(...arguments);T(this,"name","UInt16")}coerce(n){return gt(n,{range:"UInt16"})}equals(n){return n.name==="UInt16"}allocate(n){return new Uint16Array(n)}},ks=new Ur,Fr=class extends Pt{constructor(){super(...arguments);T(this,"name","UInt32")}coerce(n){return gt(n,{range:"UInt32"})}equals(n){return n.name==="UInt32"}allocate(n){return new Uint32Array(n)}},Ms=new Fr,jr=class extends Pt{constructor(){super(...arguments);T(this,"name","UInt64")}coerce(n){return zt(n,{range:"UInt64"})}equals(n){return n.name==="UInt64"}allocate(n){return new BigUint64Array(n)}},Us=new jr,Nn=class extends yn{constructor(){super(...arguments);T(this,"name","Float32")}coerce(n){return hr(n,{floatPrecision:"Float32"})}equals(n){return n.name==="Float32"}allocate(n){return new Float32Array(n)}},Fs=new Nn,kn=class extends yn{constructor(){super(...arguments);T(this,"name","Float64")}coerce(n){return hr(n,{floatPrecision:"Float64"})}equals(n){return n.name==="Float64"}allocate(n){return new Float64Array(n)}},Le=new kn,Qt=class e extends Zt{constructor(n,r){super();T(this,"precision",n);T(this,"scale",r);T(this,"name");this.name=n!==void 0&&r!==void 0?`Decimal(${n}, ${r})`:"Decimal"}coerce(n){return De(n,{precision:this.precision,scale:this.scale})}equals(n){return n instanceof e&&this.precision===n.precision&&this.scale===n.scale}allocate(n){return new Array(n).fill(null)}},vr=class extends Z{constructor(){super(...arguments);T(this,"name","Boolean")}get isBoolean(){return!0}coerce(n){return n==null?null:!!n}equals(n){return n.name==="Boolean"}allocate(n){return new Array(n).fill(null)}},Un=new vr,Br=class extends Z{constructor(){super(...arguments);T(this,"name","Utf8")}get isString(){return!0}get isUtf8(){return!0}coerce(n){return n==null?null:String(n)}equals(n){return n.name==="Utf8"}allocate(n){return new Array(n).fill(null)}},$e=new Br,Pr=class extends Z{constructor(){super(...arguments);T(this,"name","Binary")}get isBinary(){return!0}coerce(n){return ke(n)}equals(n){return n.name==="Binary"}allocate(n){return new Array(n).fill(null)}},js=new Pr,Vr=class extends Z{constructor(){super(...arguments);T(this,"name","Null")}get isNull(){return!0}coerce(n){return null}equals(n){return n.name==="Null"}allocate(n){return new Array(n).fill(null)}},vs=new Vr,Lr=class extends Z{constructor(){super(...arguments);T(this,"name","Object")}get isObject(){return!0}coerce(n){return n===void 0?null:n}equals(n){return n.name==="Object"}allocate(n){return new Array(n).fill(null)}},Bs=new Lr,$r=class extends Vt{constructor(){super(...arguments);T(this,"name","Date")}coerce(n){return X(n,{dateOnly:!0})}equals(n){return n.name==="Date"}allocate(n){return new Array(n).fill(null)}},Ps=new $r,Lt=class e extends Vt{constructor(n="ms",r=null){super();T(this,"name","Datetime");T(this,"timeUnit");T(this,"timeZone");this.timeUnit=n,this.timeZone=r}coerce(n){return X(n)}equals(n){return n instanceof e&&n.timeUnit===this.timeUnit&&n.timeZone===this.timeZone}allocate(n){return new Array(n).fill(null)}},Ke=new Lt,Kr=class extends Vt{constructor(){super(...arguments);T(this,"name","Time")}coerce(n){return Be(n)}equals(n){return n.name==="Time"}allocate(n){return new Array(n).fill(null)}},Vs=new Kr,Et=class e extends Vt{constructor(n="ms"){super();T(this,"name","Duration");T(this,"timeUnit");this.timeUnit=n}coerce(n){return $(n)}equals(n){return n instanceof e&&n.timeUnit===this.timeUnit}allocate(n){return new Array(n).fill(null)}},Ls=new Et,Mn=class e extends dn{constructor(n){super();T(this,"innerType",n);T(this,"name","Array")}coerce(n){if(n==null)return null;let r=V(n)?Array.from(n):[n],o=r.length,i=new Array(o);for(let s=0;s<o;s++)i[s]=this.innerType.coerce(r[s]);return i}equals(n){return n instanceof e&&this.innerType.equals(n.innerType)}allocate(n){return new Array(n).fill(null)}},$s=e=>new Mn(e),se=class e extends dn{constructor(n){super();T(this,"fields",n);T(this,"name","Struct")}coerce(n){if(!v(n))return null;let r={},o=Object.keys(this.fields),i=o.length;for(let s=0;s<i;s++){let a=o[s],l=this.fields[a];r[a]=l.coerce(n[a])}return r}equals(n){if(!(n instanceof e))return!1;let r=Object.keys(this.fields),o=Object.keys(n.fields);if(r.length!==o.length)return!1;for(let i=0;i<r.length;i++){let s=r[i];if(!this.fields[s].equals(n.fields[s]))return!1}return!0}allocate(n){return new Array(n).fill(null)}},Ks=e=>new se(e)});var D,$t=j(()=>{"use strict";Pe();Fn();Fn();Pe();D={Int8:Rs,Int16:_s,Int32:yt,Int64:Ve,UInt8:Ns,UInt16:ks,UInt32:Ms,UInt64:Us,Float32:Fs,Float64:Le,Decimal:(e,t)=>new Qt(e,t),Boolean:Un,Utf8:$e,Binary:js,Date:Ps,Datetime:Ke,Time:Vs,Duration:Ls,Object:Bs,Null:vs,Array:$s,Struct:Ks,Numeric:Zt,Integer:_n,SignedInteger:Bt,UnsignedInteger:Pt,Float:yn,Temporal:Vt,Nested:dn}});function iu(e={}){let t=e.nullValue!==void 0?e.nullValue:"",n=Ai(e.numericFormatOptions),r=e.replacerOptions||{},o=e.datetimeFormat??e.dateFormat??e.timeFormat,s={formatDate:o?l=>L(l)?ie(l,{format:o}):t:l=>L(l)?l.toISOString():t,onBigInt:n,...r},a=Yt(s);return l=>{if(l==null||typeof l=="symbol"||typeof l=="function"||l instanceof Date&&!L(l))return{str:t,isNumeric:!1};let c=a.call(null,"",l),u=Q(c);return u==null||typeof u=="symbol"||typeof u=="function"?{str:t,isNumeric:!1}:typeof l=="bigint"||typeof l=="number"?{str:typeof u=="string"?u:n(u),isNumeric:!0}:typeof u=="number"||typeof u=="bigint"?{str:n(u),isNumeric:!0}:typeof u=="string"?{str:u,isNumeric:!1}:typeof u=="boolean"?{str:u?"true":"false",isNumeric:!1}:typeof u=="object"?{str:JSON.stringify(u,Yt(s)),isNumeric:!1}:{str:String(u),isNumeric:!1}}}function qe(e,t,n={}){let{separator:r=",",quoteChar:o='"',includeHeader:i=!0,lineTerminator:s=`
2
+ `,quoteStyle:a="necessary",includeBom:l=!1,onRow:c,...u}=n,f=Object.keys(e),p=f.length,m=[],y=!0,d=iu(u),h=(b,O=!1)=>{let w=O?{str:String(b),isNumeric:!1}:d(b),A=w.str;if(a==="never"||!(a==="always"||a==="non_numeric"&&(O||!w.isNumeric&&b!=null)||A.includes(r)||A.includes(o)||Wo.test(A)))return A;let C=re(A,o,o+o,{literal:!0,n:1/0});return o+C+o},g=b=>{let O=y?l?"\uFEFF":"":c?s:"";y=!1;let w=O+b;c?c(w):m.push(w)},x=(b,O)=>{let w=new Array(p);for(let A=0;A<p;A++)w[A]=h(b(A),O);g(w.join(r))};i&&x(b=>f[b],!0);for(let b=0;b<t;b++)x(O=>e[f[O]][b],!1);return c?l?"\uFEFF":"":m.join(s)}function Gs(e,t={}){let n=t.separator||",",r=t.quoteChar||'"',o=pt(e,"\uFEFF",{mode:"start",returnStringOnNull:!0})??"",i=[],s=[],a="",l=!1,c=!1,u=()=>{s.push(a),a=""},f=()=>{!c&&s.length===0&&a===""||(u(),i.push(s),s=[],c=!1)},p=o.length;for(let m=0;m<p;m++){let y=o[m];if(l){if(c=!0,y!==r){a+=y;continue}if(m+1<p&&o[m+1]===r){a+=r,m++;continue}l=!1;continue}if(y===r){if(c=!0,a.length===0){l=!0;continue}a+=r;continue}if(y===n){c=!0,u();continue}if(y==="\r"||y===`
3
+ `){y==="\r"&&m+1<p&&o[m+1]===`
4
+ `&&m++,f();continue}c=!0,a+=y}return f(),i}function Js(e,t={}){let n=new Set(t.nullValues??["","NA","null","NaN"]),r=e.length,o=[{type:Un,parse:u=>{let f=u.toLowerCase();return f==="true"||f==="1"?!0:f==="false"||f==="0"?!1:null},active:!0},{type:Ve,parse:u=>zt(u,{truncate:!1}),active:!0},{type:Le,parse:u=>$(u,{allowNonFiniteNumbers:!0}),active:!0},{type:Ke,parse:u=>X(u),active:!0}],i=!1;for(let u=0;u<r;u++){let f=pt(e[u],null,{returnStringOnNull:!0})??"";if(n.has(f))continue;i=!0;let p=!1;for(let m=0;m<o.length;m++){let y=o[m];y.active&&(y.parse(f)===null?y.active=!1:p=!0)}if(!p)break}let s=i?o.find(u=>u.active):void 0,a=s?.type??$e,l=s?.parse,c=new Array(r);for(let u=0;u<r;u++){let f=e[u],p=pt(f,null,{returnStringOnNull:!0})??"";c[u]=n.has(p)?null:l?l(p):f}return{type:a,values:c}}var Ws=j(()=>{"use strict";Qn();ne();vt();Ot();$t();Rt();mn()});function le(e){let t=pt(e);if(!t)throw new Error(`Invalid duration string: "${e}"`);let n=t.startsWith("-")||t.startsWith("+"),r=t.startsWith("-")?-1:1,o=n?pt(t.slice(1))??"":t;if(!o||Dn(o,su)!==null)throw new Error(`Cannot parse duration string: "${e}"`);Gr.lastIndex=0;let i,s=0,a=0,l=0,c=0,u=!1,f=!1,p=!1,m=0,y=!1,d=0;for(;(i=Gr.exec(o))!==null;){m++;let h=i[1],g=i[2];g||(y=!0);let x=parseFloat(h)*r,b=g!==void 0?g:"ms",O=b.toLowerCase();if(d=Gr.lastIndex,b==="i"){f=!0,c+=x;continue}let w=zs[b]??zs[O];if(w){u=!0,p=!0,w.kind==="month"?s+=x*w.factor:a+=x*w.factor;continue}let A=tn[b]??tn[O];if(A===void 0)throw new Error(`Unknown duration unit: "${g}" in "${e}"`);p=!0,l+=x*A}if(m===0||d!==o.length||y&&m>1)throw new Error(`Cannot parse duration string: "${e}"`);if(f&&p)throw new Error(`Cannot combine index unit 'i' with temporal duration units in "${e}"`);return{months:s,days:a,ms:l,indexUnits:c,isCalendar:u,isIndex:f}}function Jr(e,t,n=1){let r=X(e);if(!r)throw new Error(`Invalid date provided to addCalendarDuration: ${e}`);let o=typeof t=="string"?le(t):t,i=new Date(r.getTime()),s=o.months*n;if(s!==0){let c=i.getUTCFullYear(),u=i.getUTCMonth(),f=i.getUTCDate(),p=c*12+u+s,m=Math.floor(p/12),y=(p%12+12)%12,d=nt(m,y+1,0).getUTCDate();i.setUTCFullYear(m,y,Math.min(f,d))}let a=o.days*n;a!==0&&i.setUTCDate(i.getUTCDate()+a);let l=o.ms*n;return l!==0&&i.setTime(i.getTime()+l),i}function Wr(e,t={}){let n=t.to??"ms",r=tn[n]??tn[n.toLowerCase()];if(r===void 0)throw new Error(`Unknown target duration unit: "${n}"`);let o=le(e);if(o.isCalendar&&o.months!==0)throw new Error(`Cannot convert calendar duration containing months/years to a fixed duration without an anchor date: "${e}"`);if(o.isIndex){let a=o.indexUnits/r;return Object.is(a,-0)?0:a}let s=(o.ms+o.days*St)/r;return Object.is(s,-0)?0:s}function Ge(e,t={}){let{to:n="ms",fallback:r}=t;if(e==null)return r!==void 0?r:NaN;let o=Q(e);if(typeof o=="boolean")return NaN;if(typeof o=="string")try{let l=Wr(o,{to:n});return M(l)?l:NaN}catch{return NaN}let i=$(o);if(i===null)return NaN;let s=tn[n]??tn[n.toLowerCase()];if(s===void 0)throw new Error(`Unknown target duration unit: "${n}"`);let a=i/s;return Object.is(a,-0)?0:a}var zs,tn,Gr,su,Xs=j(()=>{"use strict";vt();mn();Rt();Qn();Ot();zs=Object.freeze({M:{kind:"month",factor:1},mo:{kind:"month",factor:1},month:{kind:"month",factor:1},months:{kind:"month",factor:1},q:{kind:"month",factor:3},quarter:{kind:"month",factor:3},quarters:{kind:"month",factor:3},y:{kind:"month",factor:12},yr:{kind:"month",factor:12},year:{kind:"month",factor:12},years:{kind:"month",factor:12},d:{kind:"day",factor:1},day:{kind:"day",factor:1},days:{kind:"day",factor:1},w:{kind:"day",factor:7},week:{kind:"day",factor:7},weeks:{kind:"day",factor:7}}),tn=Object.freeze({ns:Te,nanosecond:Te,nanoseconds:Te,us:On,\u00B5s:On,\u03BCs:On,microsecond:On,microseconds:On,ms:Oe,millisecond:Oe,milliseconds:Oe,s:_t,sec:_t,second:_t,seconds:_t,m:Mt,min:Mt,minute:Mt,minutes:Mt,h:Jn,hr:Jn,hour:Jn,hours:Jn,d:St,day:St,days:St,w:Se,week:Se,weeks:Se,i:1}),Gr=/(?:^|\s*,\s*|\s+)((?:\d+(?:\.\d+)?|\.\d+)(?:[eE][+-]?\d+)?)\s*([a-zA-Zµμ]+)?/gy,su=/^,|,[\s]*,|,$|(?<![eE])[+-]|[a-zA-Zµμ]\./});var it=j(()=>{"use strict";Rt();vt();Qn();Zn();mn();ne();Ws();Sr();Xs()});function et(e,t,n,r=""){if(!(e in t))throw new nn(e,`${n} "${e}" does not exist${r}`)}function zr(e,t){let n=Object.keys(e),r=n.length,o=t;for(let i=0;i<r;i++){let s=n[i],a=e[s],l=V(a)?a.length:0;if(o===void 0)o=l;else if(l!==o)throw new ut(`Column height mismatch: Column "${s}" has length ${l}, but DataFrame height is ${o}`)}return o===void 0?0:o}function Je(e,t="Value cannot be null or undefined"){if(e==null)throw new N(t);return e}function Bc(e,t){if(!e)throw new N(t)}var Ys=j(()=>{"use strict";tt();it()});var en,Y,nn,hn,at,ut,N,Ht,tt=j(()=>{"use strict";Ys();en=class extends Error{constructor(t){super(t),this.name=this.constructor.name,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Y=class extends en{},nn=class extends Y{constructor(t,n){super(n||`Column "${t}" does not exist in the DataFrame.`)}},hn=class extends en{},at=class extends en{},ut=class extends en{},N=class extends en{},Ht=class extends en{}});function au(e,t,n){let r=n.length,o={},i=new Array(r);for(let s=0;s<r;s++){let a=n[s];if(typeof a=="string")et(a,e,"Partition key"," in the DataFrame."),o[a]=e[a],i[s]=a;else{let l=`__part_${s}`;o[l]=a.evaluate(e,t),i[s]=l}}return ce(o,i,t)}function Hs(e,t,n){let r=new Array(n);if(n===0)return r;let o=e.I||[],i=au(t,n,o),s=e.J(e.U,t,n);for(let a of i.values()){let l=a.length,c=new Array(l);for(let u=0;u<l;u++)c[u]=s[a[u]];if(e.R){for(let u=0;u<l;u++)r[a[u]]=e.R(c,a,u);continue}if(e.A){let u=e.A(c);for(let f=0;f<l;f++)r[a[f]]=u;continue}for(let u=0;u<l;u++)r[a[u]]=s[a[u]]}return e.Y(e.U,r,t)}function Zs(e){if(!Array.isArray(e)||e.length===0)return{columns:{},height:0};let t=e.length,n=new Set;for(let s=0;s<t;s++){let a=e[s];if(!v(a))continue;let l=Object.keys(a),c=l.length;for(let u=0;u<c;u++)n.add(l[u])}let r=Array.from(n),o=r.length,i={};for(let s=0;s<o;s++){let a=r[s],l=new Array(t);for(let c=0;c<t;c++){let u=e[c],f=u!=null?u[a]:null;l[c]=f===void 0?null:f}i[a]=l}return{columns:i,height:t}}function Xr(e,t,n){let r={};for(let o=0;o<n.length;o++){let i=n[o],s=e[i][t];r[i]=s===void 0?null:s}return r}function Qs(e,t){let n=Object.keys(e),r=new Array(t);for(let o=0;o<t;o++)r[o]=Xr(e,o,n);return r}function rn(e){if(e.length===0)return D.Utf8;let t=!0,n=!0,r=!0,o=!0,i=!0,s=!0,a=!0,l=!0,c=!1,u=!1,f=[];for(let p=0;p<e.length;p++){let m=e[p];if(m!=null){if(u=!0,m instanceof Uint8Array||(a=!1),!V(m)||m instanceof Uint8Array)s=!1;else{let y=m,d=y.length;for(let h=0;h<d;h++)f.push(y[h])}L(m)&&(c=!0),typeof m!="boolean"&&(t=!1),typeof m!="bigint"&&(o=!1),typeof m!="number"?(r=!1,n=!1):Number.isInteger(m)||(n=!1),!L(m)&&(typeof m!="string"||isNaN(Date.parse(m)))&&(i=!1),(!v(m)||m instanceof Uint8Array)&&(l=!1)}}if(!u)return D.Null;if(a)return D.Binary;if(s){let p=rn(f);return D.Array(p)}if(t)return D.Boolean;if(o)return D.Int64;if(r&&!n)return D.Float64;if(r&&n){let p=!0;for(let m=0;m<e.length;m++){let y=e[m];if(y!=null&&!At(y,{range:"Int32"})){p=!1;break}}return p?D.Int32:D.Float64}return i&&c?D.Datetime:l?D.Object:D.Utf8}function ue(e,t,n=un){let r=t.length,o=new Array(r);for(let i=0;i<r;i++){let s=t[i];o[i]=s!==null&&s!==n?e[s]:null}return o}function Yr(e,t,n=un){let r=Object.keys(e),o=r.length,i={};for(let s=0;s<o;s++){let a=r[s];i[a]=ue(e[a],t,n)}return i}function ce(e,t,n){let r=new Map;for(let o=0;o<n;o++){let i=jn(e,t,o),s=r.get(i);s===void 0&&r.set(i,s=[]),s.push(o)}return r}function jn(e,t,n){let r=t.length;if(r===1)return lt(e[t[0]][n]);let o=new Array(r);for(let i=0;i<r;i++)o[i]=lt(e[t[i]][n]);return o.join(Xn)}function Kt(e,t,n){let r=t.allocate?t.allocate(n):new Array(n);if(!ot(r)){for(let o=0;o<n;o++)r[o]=t.coerce(e[o]);return r}for(let o=0;o<n;o++){let i=t.coerce(e[o]);if(i!=null){r[o]=i;continue}let s=new Array(n);for(let a=0;a<o;a++)s[a]=r[a];s[o]=null;for(let a=o+1;a<n;a++)s[a]=t.coerce(e[a]);return s}return r}function ta(e,t){if(e)if(typeof e=="string"){if(typeof An!="function")throw new Ht("File writing is not supported in this environment (missing require('fs')).");An("fs").writeFileSync(e,t,"utf8")}else if(v(e)&&typeof e.write=="function")e.write(t);else throw new N("Invalid file argument. Expected a file path string or a writable stream/object with a write method.")}function Hr(e,t,n){if(t>0&&n>0)return null;let r=(e==="left"||e==="anti"||e==="outer")&&t>0,o=(e==="right"||e==="outer")&&n>0;if(!r&&!o)return{leftIndices:[],rightIndices:[]};let i=r?t:n,s=new Array(i),a=new Array(i);for(let l=0;l<i;l++)s[l]=r?l:un,a[l]=r?null:l;return{leftIndices:s,rightIndices:a}}function na(e,t,n,r){for(let o=0;o<r;o++)n[o]!==1&&(e.push(un),t.push(o))}function ea(e,t,n,r,o,i,s={}){let{how:a="inner",joinNulls:l=!1,maintainOrder:c}=s;if(a==="cross")return Fi(n,r);let u=Hr(a,n,r);if(u)return u;let f=o.length,p=i.length,m=(E,_,P,W)=>{if(!l){for(let B=0;B<P;B++)if(E[_[B]][W]==null)return null}return jn(E,_,W)},y=new Map;for(let E=0;E<r;E++){let _=m(t,i,p,E);if(_===null)continue;let P=y.get(_);P===void 0&&(P=[],y.set(_,P)),P.push(E)}let d=[],h=[];if(a==="semi"||a==="anti"){let E=a==="semi";for(let _=0;_<n;_++){let P=m(e,o,f,_),W=P===null?void 0:y.get(P),B=W!==void 0&&W.length>0;E===B&&(d.push(_),h.push(null))}return{leftIndices:d,rightIndices:h}}let g=a==="outer"||a==="right",x=g?new Uint8Array(r):null,b=a==="left"||a==="outer";for(let E=0;E<n;E++){let _=m(e,o,f,E),P=_===null?void 0:y.get(_);if(P===void 0){b&&(d.push(E),h.push(null));continue}let W=P.length;for(let B=0;B<W;B++){let st=P[B];g&&(x[st]=1),d.push(E),h.push(st)}}g&&na(d,h,x,r);let O=c||"none";if(O==="none"||O==="left")return{leftIndices:d,rightIndices:h};let w=d.length,A=new Int32Array(w);for(let E=0;E<w;E++)A[E]=E;let I=E=>d[E]===un?Number.K:d[E],C=E=>h[E]??Number.K;O==="right"?A.sort((E,_)=>C(E)-C(_)||E-_):O==="left_right"?A.sort((E,_)=>I(E)-I(_)||C(E)-C(_)||E-_):O==="right_left"&&A.sort((E,_)=>C(E)-C(_)||I(E)-I(_)||E-_);let R=new Array(w),F=new Array(w);for(let E=0;E<w;E++){let _=A[E];R[E]=d[_],F[E]=h[_]}return{leftIndices:R,rightIndices:F}}function ra(e,t,n,r,o,i,s,a,l={}){let c=Hr("left",n,r);if(c)return c;et(o,e,"Join on key"," in the left DataFrame."),et(i,t,"Join on key"," in the right DataFrame.");let u=l.strategy??"backward",f=l.allowExactMatches??!0,p=l.checkSorted??!0,m=e[o],y=t[i];if(p){let A=(I,C,R,F)=>{for(let E=1;E<C;E++){let _=$(I[E-1]),P=$(I[E]);if(M(_)&&M(P)&&P<_)throw new N(`${F} DataFrame key column "${R}" is not sorted in ascending order at row ${E}.`)}};A(m,n,o,"left"),A(y,r,i,"right")}let d=s.length>0,h=d?ce(t,a,r):null,g=new Array(r);if(!d)for(let A=0;A<r;A++)g[A]=A;let x=new Array(n),b=new Array(n),O=(A,I)=>{let C=I.length;if(C===0)return null;let R=(B,st)=>$(y[st])??NaN;if(u==="backward"){let B=fn(I,A,{side:f?"right":"left",getValue:R})-1;return B>=0?I[B]:null}if(u==="forward"){let B=fn(I,A,{side:f?"left":"right",getValue:R});return B<C?I[B]:null}let F=fn(I,A,{side:"right",getValue:R}),E=F-1,_=F;if(f||(E>=0&&R(E,I[E])===A&&E--,_<C&&R(_,I[_])===A&&_++),E<0)return _<C?I[_]:null;if(_>=C)return E>=0?I[E]:null;let P=R(E,I[E]),W=R(_,I[_]);return Math.abs(A-P)<=Math.abs(A-W)?I[E]:I[_]},w=l.tolerance!==void 0?$(l.tolerance):null;for(let A=0;A<n;A++){x[A]=A;let I=$(m[A]);if(!M(I)){b[A]=null;continue}let C=d?h.get(jn(e,s,A))||[]:g;if(C.length===0){b[A]=null;continue}let R=O(I,C);if(R!==null&&w!==null){let F=$(y[R]);(!M(w)||!M(F)||Math.abs(I-F)>w)&&(R=null)}b[A]=R}return{leftIndices:x,rightIndices:b}}function oa(e,t,n,r,o,i={}){let s=i.how??"inner",a=Hr(s,n,r);if(a)return a;let[l="",c="_right"]=i.suffixes??["","_right"],u=[],f=[],p=o.length,m=s==="right",y=m?new Uint8Array(r):null,d={},h=(I,C,R)=>{let F=Object.keys(I),E=F.length,_=new Array(E);for(let P=0;P<E;P++){let W=F[P],B=W in C&&R!==""?`${W}${R}`:W;_[P]=B,d[B]=new Array(1)}return _},g=h(e,t,l),x=h(t,e,c),b=Object.keys(e),O=Object.keys(t),w=b.length,A=O.length;for(let I=0;I<n;I++){let C=!1;for(let R=0;R<w;R++)d[g[R]][0]=e[b[R]][I];t:for(let R=0;R<r;R++){for(let F=0;F<A;F++)d[x[F]][0]=t[O[F]][R];for(let F=0;F<p;F++)if(o[F].evaluate(d,1)[0]!==!0)continue t;C=!0,u.push(I),f.push(R),m&&(y[R]=1)}!C&&s==="left"&&(u.push(I),f.push(null))}return m&&na(u,f,y,r),{leftIndices:u,rightIndices:f}}function We(e,t,n,r,o,i,s,a,l={}){let[c="",u="_right"]=l.suffixes||[],f=l.coalesce??!0,p=l.how||"inner",m=o.length,y={},d={},h=new Set(s),g=new Set(a),x=new Set,b=Object.keys(e),O=Object.keys(t),w=new Map;for(let I=0;I<s.length;I++)w.has(s[I])||w.set(s[I],a[I]);let A=(I,C)=>{let R=C||"_left",F=`${I}${R}`,E=1;for(;x.has(F);)F=`${I}${R}_${E++}`;return x.add(F),F};for(let I=0;I<b.length;I++){let C=b[I];(!(C in t)||h.has(C)||g.has(C))&&x.add(C)}for(let I=0;I<b.length;I++){let C=b[I],R=h.has(C),F;C in t&&!R&&!g.has(C)?c!==""?(x.add(C),F=A(C,c)):x.has(C)?F=A(C,c):(F=C,x.add(C)):F=C;let E=e[C],_=R?w.get(C):null,P=_?t[_]:null;if(R&&f){let W=new Array(m);for(let B=0;B<m;B++){let st=o[B],kt=i[B],ct=st!==un?E[st]:null,ft=kt!==null&&P?P[kt]:null;W[B]=ct??ft}y[F]=W}else y[F]=ue(E,o);n[C]?d[F]=n[C]:_&&r[_]&&(d[F]=r[_])}if(p!=="semi"&&p!=="anti")for(let I=0;I<O.length;I++){let C=O[I];if(f&&g.has(C))continue;let R=x.has(C)?A(C,u):C;x.add(R),y[R]=ue(t[C],i),r[C]&&(d[R]=r[C])}return q.S(y,d,m)}var ze=j(()=>{"use strict";vn();$t();Ot();it();tt()});function lu(e,t){if(e==null)return null;let n=L(e)?e.getTime():e;return t(n)}function ia(e,t,n){if(e==null||t==null)return null;let r=L(e)?e.getTime():e,o=L(t)?t.getTime():t;return n(r,o)}function It(e,t,n){return e.Ot?Hs(e,t,n):e.evaluate(t,n)}function Bn(e,t,n){return typeof e=="object"&&e!==null&&"_ops"in e?It(e,t||{},n):typeof e=="string"&&t!=null&&e in t?t[e]:e}function Pn(e,t,n,r){return!V(t)||t.length!==r?!1:typeof e=="object"&&e!==null&&"_ops"in e||typeof e=="string"&&n!=null&&e in n}function sa(e){let t=new Set,n=V(e)?e:[e];for(let r=0;r<n.length;r++)t.add(lt(n[r]));return t}function aa(e,t,n){let r=e.length,o=n&&typeof n=="object"&&"evaluate"in n,i=o?n.evaluate(t,r):null,s=o?null:sa(n),a=new Array(r);for(let l=0;l<r;l++){let c=e[l];if(c==null){a[l]=null;continue}let u=s??sa(i[l]);a[l]=u.has(lt(c))}return a}function la(e,t){let n=e.length,r=V(t),o=new Array(n);for(let i=0;i<n;i++){let s=e[i],a=r?t[i]:t;s==null||a==null?o[i]=s==null&&a==null:o[i]=s===a}return o}function Zr(e,t,n={}){if(t==null)return null;let r=n.dense?"_denseRankCache":"_rankCache",o=e[r];if(!o){let i=e;if(n.ignoreNulls){i=[];let l=e.length;for(let c=0;c<l;c++)e[c]!=null&&i.push(e[c])}n.dense&&(i=Array.from(new Set(i)));let s=Hn(i);o=new Map;let a=s.length;for(let l=0;l<a;l++){let c=s[l];o.has(c)||o.set(c,l+1)}e[r]=o}return o.get(t)??null}var k,G,qt=j(()=>{"use strict";it();Rt();ze();k=e=>t=>{let n=t.length,r=new Array(n);for(let o=0;o<n;o++)r[o]=lu(t[o],e);return r},G=(e,t,n)=>{let r=(o,i)=>{let s=o.length,a=e.v(t,i,s),l=new Array(s);if(V(a))for(let c=0;c<s;c++)l[c]=ia(o[c],a[c],n);else for(let c=0;c<s;c++)l[c]=ia(o[c],a,n);return l};return r.C={left:e,right:t},r}});var S,xt,on=j(()=>{"use strict";tt();qt();S=(e,t)=>{let n=e.constructor,r=e.G||e.f||"",o=new n(r);return Object.assign(o,e),o.p=t?[...e.p,t]:[...e.p],t&&t.C&&(o.C=t.C),o},xt=class e{constructor(){T(this,"p",[]);T(this,"O","");T(this,"B");T(this,"P");T(this,"A",null);T(this,"_");T(this,"C");T(this,"N");T(this,"U");T(this,"I",null);T(this,"R");T(this,"F");T(this,"Z");T(this,"Q")}Y(t,n,r){let o=this.p,i=t!==void 0?t:o.length,s=n;for(let a=i;a<o.length;a++)s=o[a](s,r);return s}J(t,n,r){let o=this.Tt(n,r),i=this.p,s=t!==void 0?t:i.length;for(let a=0;a<s;a++)o=i[a](o,n);return o}Tt(t,n){let r=this.f;if(r&&r!=="*"&&!r.startsWith("*")&&!(r in t))throw new nn(r);return(r&&r!=="*"?t[r]:null)||new Array(n).fill(null)}v(t,n,r){return t instanceof e?t.B&&t.p.length===1?t.P:It(t,n,r):t}alias(t){let n=S(this);return n.O=t,n}cast(t){let n=S(this,k(r=>t.coerce(r)));return n._=t,n}debug(t){return S(this,n=>n)}evaluate(t,n){return this.J(void 0,t,n)}}});var Xe,Qr=j(()=>{"use strict";on();qt();tt();it();Xe=class extends xt{V(t,n,r,o){return this.j(function(i,s,a){let l=n,c=!1,u=t?a:0,f=t?i.length-1:a;for(let p=u;p<=f;p++){let m=i[p];m!=null&&(l=r(l,m),c=!0)}return o?o(l,c):l})}o(t){let n=S(this);return n.A=t,n.N=this.p.length,n.U=this.p.length,n}k(t,n){let r=S(this,G(this,t,(o,i)=>[o,i])).o(n);return r.C=void 0,r}get Ot(){return this.I!==null||this.R!==void 0||this.A!==null}j(t){let n=S(this);return n.U=this.p.length,n.N=this.p.length,n.R=t,n}abs(){return S(this,k(Math.abs))}add(t){return S(this,G(this,t,(n,r)=>n+r))}all(){return this.o(t=>H(t,n=>!!n,{mode:"every"}))}allNull(){return this.o(t=>H(t,"nullish",{mode:"every"}))}and(t){return S(this,(n,r)=>{let o=n.length,i=this.v(t,r,o),s=V(i),a=new Array(o);for(let l=0;l<o;l++){let c=n[l],u=s?i[l]:i;c===!1||u===!1?a[l]=!1:c==null||u==null?a[l]=null:a[l]=!0}return a})}any(){return this.o(t=>H(t,n=>!!n,{mode:"some"}))}anyNull(){return this.o(t=>H(t,"nullish",{mode:"some"}))}arccos(){return S(this,k(t=>t<-1||t>1?null:Math.acos(t)))}arccosh(){return S(this,k(t=>t<1?null:Math.acosh(t)))}arcsin(){return S(this,k(t=>t<-1||t>1?null:Math.asin(t)))}arcsinh(){return S(this,k(Math.asinh))}arctan(){return S(this,k(Math.atan))}arctan2(t){return S(this,G(this,t,Math.atan2))}arctanh(){return S(this,k(t=>t<=-1||t>=1?null:Math.atanh(t)))}argMax(){return this.o(t=>K(t).maxIdx)}argMin(){return this.o(t=>K(t).minIdx)}avg(){return this.o(t=>K(t).mean)}between(t,n,r="both"){let o=r==="both"||r==="left"?this.ge(t):this.gt(t),i=r==="both"||r==="right"?this.le(n):this.lt(n);return o.and(i)}bitwiseAnd(){return this.o(t=>Ne(t,(n,r)=>n&r))}bitwiseOr(){return this.o(t=>Ne(t,(n,r)=>n|r))}bitwiseXor(){return this.o(t=>Ne(t,(n,r)=>n^r))}cbrt(){return S(this,k(Math.cbrt))}ceil(){return S(this,k(Math.ceil))}clip(t=null,n=null){return S(this,k(r=>z(r,{min:t,max:n})))}copysign(t){return S(this,G(this,t,(n,r)=>Math.abs(n)*(r>=0?1:-1)))}corr(t){return this.k(t,n=>xr(n)?.correlation??null)}cos(){return S(this,k(Math.cos))}cosh(){return S(this,k(Math.cosh))}cot(){return S(this,k(t=>{if(Number.isNaN(t))return NaN;if(!M(t))return null;let n=Math.tan(t);return n===0?null:1/n}))}count(t={}){return t.includeNulls?this.o(n=>n.length):this.o(n=>K(n).count)}cov(t){return this.k(t,n=>xr(n)?.covariance??null)}cumCount(t=!1){return this.V(t,0,n=>n+1)}cumMax(t=!1){return this.V(t,null,(n,r)=>n===null||r>n?r:n)}cumMin(t=!1){return this.V(t,null,(n,r)=>n===null||r<n?r:n)}cumProd(t=!1){return this.V(t,1,(n,r)=>n*r,(n,r)=>r?n:null)}cumSum(t=!1){return this.V(t,0,(n,r)=>n+r)}degrees(){return S(this,k(t=>t*(180/Math.PI)))}denseRank(){return this.rank({dense:!0})}div(t){return S(this,G(this,t,(n,r)=>r===0?null:n/r))}dot(t){return this.k(t,n=>Mi(n))}entropy(t={base:Math.E,normalize:!0}){return this.o(n=>Pi(n,t))}eq(t){return S(this,G(this,t,(n,r)=>n===r))}eqMissing(t){return S(this,(n,r)=>{let o=this.v(t,r,n.length);return la(n,o)})}exp(){return S(this,k(Math.exp))}expm1(){return S(this,k(Math.expm1))}fillNull({value:t=void 0,strategy:n=void 0,limit:r=void 0}={}){return n==="zero"?t=0:n==="one"&&(t=1),S(this,(o,i)=>{let s=o.length,a=Array.from(o);if(t!==void 0){let l=this.v(t,i,s),c=V(l);for(let u=0;u<s;u++)a[u]==null&&(a[u]=c?l[u]:l);return a}if(n==="min"||n==="max"||n==="mean"){let l=K(o)[n];for(let c=0;c<s;c++)a[c]==null&&(a[c]=l);return a}if(n==="forward"||n==="backward"){let l=n==="backward",c=null,u=0;for(let f=0;f<s;f++){let p=l?s-1-f:f,m=a[p];if(m!=null){c=m,u=0;continue}c!==null&&(r===void 0||u<r)&&(a[p]=c,u++)}return a}if(n!==void 0)throw new N(`Unsupported fillNull strategy: "${n}"`);return a})}filter(t){return S(this,(n,r)=>{let o=It(t,r,n.length);return In(n,o,{nullify:!0})})}first(){return this.o(t=>t[0]??null)}floor(){return S(this,k(Math.floor))}floordiv(t){return S(this,G(this,t,(n,r)=>r===0?null:Math.floor(n/r)))}ge(t){return S(this,G(this,t,(n,r)=>n>=r))}gt(t){return S(this,G(this,t,(n,r)=>n>r))}hasNulls(){return this.anyNull()}hypot(t){return S(this,G(this,t,Math.hypot))}implode(){return this.o(t=>t)}isClose(t,{absTol:n=1e-8,relTol:r=1e-8,nansEqual:o=!1}={}){return S(this,G(this,t,(i,s)=>{if(M(i)&&M(s)){let a=Math.abs(i-s),l=Math.max(r*Math.max(Math.abs(i),Math.abs(s)),n);return a<=l}return Number.isNaN(i)&&Number.isNaN(s)?o:i===s}))}isDuplicated(){return S(this,t=>{let{frequencies:n}=Xt(t,{strict:!0}),r=t.length,o=new Array(r);for(let i=0;i<r;i++)o[i]=(n.get(t[i])||0)>1;return o})}isFinite(){return S(this,k(Number.isFinite))}isIn(t){return S(this,(n,r)=>aa(n,r,t))}isInfinite(){return S(this,k(t=>t===1/0||t===-1/0))}isNan(){return S(this,k(Number.isNaN))}isNDistinct(t,n=!0){return S(this,(r,o)=>{let{values:i}=Xt(r,{strict:!0}),s=En(i,t,n);return this.eq(s).evaluate(o,r.length)})}isNotNan(){return this.isNan().not()}isNotNull(){return this.isNull().not()}isNull(){return this.eqMissing(null)}isUnique(){return this.isDuplicated().not()}kurtosis(t={}){return this.o(n=>Bi(n,t))}lag(t=1,n=null){return this.j(function(r,o,i){let s=n;return i-t>=0&&(s=r[i-t]),s})}last(){return this.o(t=>t[t.length-1]??null)}le(t){return S(this,G(this,t,(n,r)=>n<=r))}lead(t=1,n=null){return this.j(function(r,o,i){let s=n;return i+t<r.length&&(s=r[i+t]),s})}log(t=Math.E){return S(this,k(n=>n<=0?null:t===Math.E?Math.log(n):Math.log(n)/Math.log(t)))}log1p(){return S(this,k(t=>t<=-1?null:Math.log1p(t)))}lt(t){return S(this,G(this,t,(n,r)=>n<r))}max(){return this.o(t=>K(t).max)}maxBy(t){return this.k(t,n=>wr(n,"maxIdx"))}mean(){return this.avg()}median(){return this.o(t=>cn(t,.5))}min(){return this.o(t=>K(t).min)}minBy(t){return this.k(t,n=>wr(n,"minIdx"))}mod(t){return S(this,G(this,t,(n,r)=>r===0?null:n%r))}mode(){return this.o(t=>_e(t))}mul(t){return S(this,G(this,t,(n,r)=>n*r))}nanMax(){return this.o(t=>K(t).nanMax)}nanMin(){return this.o(t=>K(t).nanMin)}ne(t){return this.eq(t).not()}negate(){return S(this,k(t=>-t))}neMissing(t){return this.eqMissing(t).not()}not(){return S(this,k(t=>!t))}notIn(t){return this.isIn(t).not()}nullCount(){return this.o(t=>K(t).nullCount)}nUnique(t={}){return this.o(n=>Xt(n,t).count)}or(t){return S(this,(n,r)=>{let o=n.length,i=this.v(t,r,o),s=V(i),a=new Array(o);for(let l=0;l<o;l++){let c=n[l],u=s?i[l]:i;c===!0||u===!0?a[l]=!0:c==null||u==null?a[l]=null:a[l]=!1}return a})}over(t){let n=S(this),r=Array.isArray(t)?t:[t];return n.I=r,n}pow(t){return S(this,G(this,t,Math.pow))}product(){return this.o(t=>K(t).product)}quantile(t){if(t<0||t>1)throw new at("Quantile q must be between 0 and 1");return this.o(n=>cn(n,t))}radians(){return S(this,k(t=>t*(Math.PI/180)))}rand(t,{min:n=0,max:r=1,integer:o=!1}={}){return S(this,i=>{let s=i.length,a=new Float64Array(s),l=t!==void 0?Ti(t):Math.random,c=r-n;for(let u=0;u<s;u++){let f=l();a[u]=o?Math.floor(f*(c+1))+n:f*c+n}return a})}rank(t={}){return this.j(function(n,r,o){return Zr(n,n[o],t)})}reverse(){return S(this,t=>t.slice().reverse())}rolling(t,n){let r=typeof t=="number"?t:t?.windowSize??NaN;if(!Number.isFinite(r)||r<1)throw new N("rolling: windowSize must be a positive number >= 1");if(!n||typeof n!="function"&&typeof n.evaluate!="function")throw new N("rolling: second argument must be a reducer function or ColumnExpression");let o=Math.floor(r),i=n.f||this.f||"val",s=typeof n=="function"?n:n.A??(a=>{let l=It(n,{[i]:a},a.length);return Array.isArray(l)?l[l.length-1]:l});return this.j(function(a,l,c){let u=Math.max(0,c-o+1),f=c+1;return s(a.slice(u,f))})}rollingMax(t){return this.rolling(t,n=>K(n).max)}rollingMean(t){return this.rolling(t,n=>K(n).mean)}rollingMedian(t){return this.rolling(t,n=>cn(n,.5))}rollingMin(t){return this.rolling(t,n=>K(n).min)}rollingQuantile(t,n){return this.rolling(n,r=>cn(r,t))}rollingRank(t){return this.rolling(t,n=>Zr(n,n[n.length-1],{ignoreNulls:!0}))}rollingStd(t){return this.rolling(t,n=>K(n).std)}rollingSum(t){return this.rolling(t,n=>K(n).sum)}round(t=0){return S(this,k(n=>gr(n,t)))}roundSigFigs(t){return S(this,k(n=>M(n)?Number(n.toPrecision(t)):n))}rowNumber(){let t=this.j(function(n,r,o){return o+1});return t.O="row_number",t}sign(){return S(this,k(Math.sign))}sin(){return S(this,k(Math.sin))}sinh(){return S(this,k(Math.sinh))}skew(t={}){return this.o(n=>vi(n,t))}spearmanCorr(t){return this.k(t,n=>ki(n))}sqrt(){return S(this,k(t=>t<0?null:Math.sqrt(t)))}std(){return this.o(t=>K(t).std)}sub(t){return S(this,G(this,t,(n,r)=>n-r))}sum(){return this.o(t=>K(t).sum)}tan(){return S(this,k(Math.tan))}tanh(){return S(this,k(Math.tanh))}trunc(){return S(this,k(Math.trunc))}variance(){return this.o(t=>K(t).variance)}wAvg(t){return this.k(t,n=>Ui(n))}xor(t){return S(this,G(this,t,(n,r)=>!!n!=!!r))}}});var to,Ye,no=j(()=>{"use strict";on();qt();it();Gt();tt();to=class{constructor(t){T(this,"expr",t)}l(t){return S(this.expr,k(n=>V(n)?t(n):null))}ft(t,n){let r=S(this.expr,G(this.expr,t,(o,i)=>V(o)?n(o,i):null));return r.C=void 0,r}agg(t){return S(this.expr,(n,r)=>{let o=n.length,i=new Array(o),s=Object.create(r);for(let a=0;a<o;a++){let l=n[a];if(!V(l)){i[a]=null;continue}let c=l.length;s[Sn]=l;let u=It(t,s,c);i[a]=V(u)?u[0]??null:u}return i})}all(){return this.l(t=>H(t,n=>!!n,{mode:"every"}))}any(){return this.l(t=>H(t,n=>!!n,{mode:"some"}))}argMax(){return this.l(t=>K(t).maxIdx)}argMin(){return this.l(t=>K(t).minIdx)}contains(t){return this.ft(t,(n,r)=>Array.prototype.includes.call(n,r))}containsAll(t){return this.l(n=>H(t,r=>Array.prototype.includes.call(n,r),{mode:"every"}))}containsAny(t){return this.l(n=>H(t,r=>Array.prototype.includes.call(n,r),{mode:"some"}))}countMatches(t,n={}){return this.ft(t,(r,o)=>Xt(r,n).frequencies.get(o)??0)}filter(t){return S(this.expr,(n,r)=>{let o=n.length,i=new Array(o),s=Object.create(r);for(let a=0;a<o;a++){let l=n[a];if(!V(l)){i[a]=null;continue}let c=l.length;s[Sn]=l;let u=It(t,s,c);i[a]=In(l,u)}return i})}explode({emptyAsNull:t=!0,keepNulls:n=!0}={}){return S(this.expr,r=>{let o=r.length,i=0;for(let c=0;c<o;c++){let u=r[c];if(V(u)){i+=u.length||(t?1:0);continue}if(u!=null){i+=1;continue}n&&(i+=1)}let s=new Array(i),a=new Int32Array(i),l=0;for(let c=0;c<o;c++){let u=r[c];if(V(u)){let f=u.length;if(f>0){for(let p=0;p<f;p++)a[l]=c,s[l++]=u[p];continue}t&&(a[l]=c,s[l++]=null);continue}if(u!=null){a[l]=c,s[l++]=u;continue}n&&(a[l]=c,s[l++]=null)}return s.rowMap=a,s})}first(t=!0){return this.get(0,t)}gather(t,n=!0){return this.l(r=>{let o=typeof t=="number"?[t]:t,i=o.length,s=new Array(i);for(let a=0;a<i;a++)s[a]=En(r,o[a],n);return s})}gatherEvery(t={}){return this.l(n=>Ce(n,t))}get(t,n=!0){return this.l(r=>En(r,t,n))}join(t=",",n={}){return this.l(r=>Re(r,t,n))}last(t=!0){return this.get(-1,t)}len(){return this.lengths()}lengths(){return this.l(t=>t.length)}max(){return this.l(t=>K(t).max)}mean(){return this.l(t=>K(t).mean)}median(){return this.l(t=>cn(t,.5))}min(){return this.l(t=>K(t).min)}mode(){return this.l(t=>_e(t))}nUnique(t={}){return this.l(n=>Xt(n,t).count)}reverse(){return this.l(t=>t.slice().reverse())}shift(t=1){return this.l(n=>Ri(n,t))}slice(t,n){return this.l(r=>r.slice(t,n))}splice(t,n,...r){return this.l(o=>{let i=[...o];return i.splice(t,n??i.length,...r),i})}sort(t){return this.l(n=>Hn(n,t))}std(){return this.l(t=>K(t).std)}sum(){return this.l(t=>K(t).sum)}toStruct({upperBound:t,fields:n}={}){return S(this.expr,r=>{let o=r.length,i=new Array(o),s=0;if(Array.isArray(n))s=n.length;else if(typeof t=="number")s=t;else for(let l=0;l<o;l++){let c=r[l];V(c)&&c.length>s&&(s=c.length)}if(s===0)throw new at("toStruct cannot be evaluated: struct width is 0. Provide an upperBound, non-empty fields names, or non-empty lists.");let a=new Array(s);for(let l=0;l<s;l++)typeof n=="function"?a[l]=n(l):a[l]=(Array.isArray(n)?n[l]:null)??`field_${l}`;for(let l=0;l<o;l++){let c=r[l];if(!V(c)){i[l]=null;continue}let u={};for(let f=0;f<s;f++)u[a[f]]=En(c,f,!0);i[l]=u}return i})}unique(t={}){return this.l(n=>Xt(n,t).values)}variance(){return this.l(t=>K(t).variance)}eval(t){return S(this.expr,(n,r)=>{let o=n.length,i=new Array(o),s=Object.create(r);for(let a=0;a<o;a++){let l=n[a];if(!V(l)){i[a]=null;continue}let c=l.length;if(s[Sn]=l,t.A!=null&&(t.I==null||t.I.length===0)){let f=t.N!==void 0?t.N:t.p.length,p=t.J(f,s,c),m=t.A(Array.from(p));i[a]=t.Y(f,[m],s)}else i[a]=It(t,s,c)}return i})}},Ye=class extends xt{get arr(){return new to(this)}}});var eo,He,ro=j(()=>{"use strict";on();qt();Ot();it();eo=class{constructor(t){T(this,"expr",t)}e(t){return S(this.expr,k(n=>t(String(n))))}T(t,n){return t==null?S(this.expr,r=>new Array(r.length).fill(null)):n()}pt(t,n){return n==null?!1:mt(n)?(n.lastIndex=0,n.test(t)):t.includes(n)}concat(t){return S(this.expr,G(this.expr,t,(n,r)=>String(n)+String(r)))}contains(t){return this.T(t,()=>this.e(n=>this.pt(n,t)))}containsAny(t){return this.T(t,()=>{let n=bt(t),r=n.length;return this.e(o=>{for(let i=0;i<r;i++)if(this.pt(o,n[i]))return!0;return!1})})}countMatches(t,n={}){let r=typeof n=="boolean"?n:n?.literal??!1;return this.T(t,()=>this.e(o=>{let i=r?Tt(t):t,s=pn(o,i,{global:!0});if(!s)return 0;let a=s.input.match(s.reg);return a?a.length:0}))}escapeRegex(t={}){return this.e(n=>Tt(n,t))}decode(t){return this.e(n=>os(n,t.encoding,t))}encode(t){return this.e(n=>rs(n,t.encoding))}decodeUriComponent(){return this.e(t=>{try{return decodeURIComponent(t)}catch{return t}})}encodeUriComponent(){return this.e(t=>{try{return encodeURIComponent(t)}catch{return t}})}endsWith(t){return this.e(n=>n.endsWith(t))}explode(){return this.e(t=>t.split(""))}extract(t,n){return this.T(t,()=>this.e(r=>Er(r,t,n)))}extractAll(t,n){return this.T(t,()=>this.e(r=>us(r,t,n)??[]))}extractGroups(t,n={}){return this.T(t,()=>this.e(r=>cs(r,t,n)))}extractMany(t,n={}){return this.T(t,()=>this.e(r=>fs(r,t,n)))}find(t,n={}){return this.T(t,()=>this.e(r=>Dn(r,t,n)))}findMany(t,n={}){return this.T(t,()=>this.e(r=>ms(r,t,n)))}head(t=1){return this.slice(0,t)}join(t="",n={}){return S(this.expr,k(r=>{let o=bt(r);return o==null?null:Re(o,t,n)}))}jsonDecode(t={}){return this.e(n=>te(n,t))}jsonPathMatch(t){return this.e(n=>Ji(n,t))}len(){return this.lenChars()}lenBytes(){return this.e(t=>Wt.encode(t).length)}lenChars(){return this.e(t=>t.length)}lower(){return this.e(t=>t.toLowerCase())}lpad(t,n=" "){return this.e(r=>r.padStart(t,n))}normalize(t){return this.e(n=>n.normalize(t))}padEnd(t,n=" "){return this.rpad(t,n)}padStart(t,n=" "){return this.lpad(t,n)}replace(t,n,r){return this.T(t,()=>this.e(o=>re(o,t,n,{n:1,...r})??o))}replaceAll(t,n,r){return this.T(t,()=>this.e(o=>re(o,t,n,{...r,n:-1})??o))}replaceMany(t,n,r){return this.T(t,()=>this.e(o=>ds(o,t,n,r)??o))}reverse(){return this.e(t=>t.split("").reverse().join(""))}rpad(t,n=" "){return this.e(r=>r.padEnd(t,n))}slice(t,n){return this.e(r=>{let o=t<0?r.length+t:t,i=n!==void 0?o+n:void 0;return r.slice(o,i)})}split(t,n){return this.e(r=>ps(r,t,n))}startsWith(t){return this.e(n=>n.startsWith(t))}stripChars(t,n){return this.e(r=>pt(r,t,{mode:"both",...n}))}stripCharsEnd(t,n){return this.e(r=>pt(r,t,{mode:"end",...n}))}stripCharsStart(t,n){return this.e(r=>pt(r,t,{mode:"start",...n}))}stripPrefix(t){return this.e(n=>pt(n,t,{mode:"start",maxScanStart:1,maxMatchesStart:1,returnStringOnNull:!0,stringOptions:{literal:!0}}))}stripSuffix(t){return this.e(n=>pt(n,t,{mode:"end",maxScanEnd:1,maxMatchesEnd:1,returnStringOnNull:!0,stringOptions:{literal:!0}}))}tail(t=1){return this.slice(-t)}strptime(t){return this.e(n=>Ts(n,t))}toCamelCase(){return this.e(t=>Cn(t,{format:"camel"}))}toDate(){return this.e(t=>X(t,{dateOnly:!0}))}toDatetime(){return this.e(X)}toDecimal(t,n){return this.e(r=>De(r,{precision:t,scale:n}))}toInteger(){return this.e(t=>gt(t))}toKebabCase(){return this.e(t=>Cn(t,{format:"kebab"}))}toLowerCase(){return this.lower()}toPascalCase(){return this.e(t=>Cn(t,{format:"pascal"}))}toSnakeCase(){return this.e(t=>Cn(t,{format:"snake"}))}toTime(){return this.e(Be)}toTitleCase(){return this.e(t=>Cn(t,{format:"title"}))}toUpperCase(){return this.upper()}trim(){return this.stripChars()}trimEnd(){return this.stripCharsEnd()}trimStart(){return this.stripCharsStart()}upper(){return this.e(t=>t.toUpperCase())}zfill(t){return this.e(n=>n.padStart(t,"0"))}},He=class extends xt{get str(){return new eo(this)}}});function ua(e){return Je(e,"Column reference cannot be null or undefined."),Ze||(Ze=(Dt(),Eo(ca)).ColumnExpr),Ze.isColExpr(e)?e:new Ze(e)}var Ze,oo,Qe,io=j(()=>{"use strict";on();tt();Ze=null;oo=class{constructor(t){T(this,"expr",t);return new Proxy(this,{get(n,r,o){return r in n?Reflect.get(n,r,o):typeof r=="string"?n.field(r):Reflect.get(n,r,o)}})}field(t){let n=S(this.expr,r=>{let o=r.length,i=new Array(o);for(let s=0;s<o;s++){let a=r[s];i[s]=a!=null&&typeof a=="object"?a[t]:null}return i});return n.F=this.expr,n.Z=t,n.alias(t)}renameFields(t){return S(this.expr,n=>{let r=n.length,o=new Array(r),i=Object.keys(t),s=i.length;for(let a=0;a<r;a++){let l=n[a];if(l==null||typeof l!="object"){o[a]=null;continue}let c={},u=Object.keys(l),f=u.length;for(let p=0;p<f;p++){let m=u[p];c[m]=l[m]}for(let p=0;p<s;p++){let m=i[p];if(m in c){let y=t[m];c[y]=c[m],delete c[m]}}o[a]=c}return o})}withFields(t){return S(this.expr,(n,r)=>{let o=n.length,i=new Array(o),s=[];if(Array.isArray(t)){let c=t.length;for(let u=0;u<c;u++){let f=t[u],p=ua(f),m=p.O||p.f;if(!m)throw new N("Expressions passed to struct.withFields must have a name/alias.");s.push({name:m,expr:p})}}else if(t&&typeof t=="object"){let c=Object.keys(t),u=c.length;for(let f=0;f<u;f++){let p=c[f],m=ua(t[p]);s.push({name:p,expr:m})}}let a=s.length,l=new Array(a);for(let c=0;c<a;c++)l[c]=s[c].expr.evaluate(r,o);for(let c=0;c<o;c++){let u=n[c];if(u==null||typeof u!="object"){i[c]=null;continue}let f={},p=Object.keys(u),m=p.length;for(let y=0;y<m;y++){let d=p[y];f[d]=u[d]}for(let y=0;y<a;y++)f[s[y].name]=l[y][c];i[c]=f}return i})}unnest(){let t=S(this.expr);return t.Q=!0,t.F=this.expr,t}},Qe=class extends xt{get struct(){return new oo(this)}}});var ca={};To(ca,{ColumnExpr:()=>U,resolveColumnSelectors:()=>sn});function uu(e,t){for(let n of t)for(let r of Object.getOwnPropertyNames(n.prototype))r!=="constructor"&&Object.defineProperty(e.prototype,r,Object.getOwnPropertyDescriptor(n.prototype,r)||Object.create(null))}function cu(e,t,n,r){if(e instanceof U&&e.G?.length)return e.G;if(!(e instanceof U)&&(!v(e)||!("evaluate"in e)||e.f))return null;let o;if(!(e instanceof U))o=()=>!0;else if(e.f==="*"){let a=new Set(e.mt);o=l=>!a.has(l)}else if(e.z?.length){let a=e.z,l=a.length;o=c=>{for(let u=0;u<l;u++)if(a[u].lastIndex=0,a[u].test(c))return!0;return!1}}else if(e.W?.length){if(!r)throw new hn("Cannot resolve DataType column selector without DataFrame schema.");let a=e.W,l=a.length;o=c=>{let u=r[c];if(!u)return!1;for(let f=0;f<l;f++)if(u.matches(a[f]))return!0;return!1}}else return null;let i=[],s=t.length;for(let a=0;a<s;a++){let l=t[a];!n.has(l)&&o(l)&&i.push(l)}return i}function sn(e,t,n,r,o){let i=[],s=n?new Set(n):new Set;for(let a=0;a<e.length;a++){let l=e[a];if(typeof l=="string"){i.push(new U(l));continue}if(v(l)&&l.Q&&l.F){let u=l.F,f=[],p=l.f;if(typeof p=="string"&&r&&r[p]&&r[p].name==="Struct"&&(f=Object.keys(r[p].fields)),f.length===0&&o){let d=Object.keys(o)[0],h=d?o[d].length:0,g=u.evaluate(o,h),x=g.length;for(let b=0;b<x;b++){let O=g[b];if(O!=null&&typeof O=="object"){f=Object.keys(O);break}}}let m=f.length;if(m>0){for(let y=0;y<m;y++){let d=f[y],h=u.struct.field(d);i.push(h)}continue}}let c=cu(l,t,s,r);if(c!==null)for(let u=0;u<c.length;u++){let f=new U(c[u]);f.p=[...l.p||[]],f.A=l.A,f.U=l.U,f.N=l.N,f.I=l.I,l.R&&(f.R=l.R),l.O&&l.O!=="*"&&(f.O=l.O),i.push(f)}else i.push(l)}return i}var U,Dt=j(()=>{"use strict";on();Qr();ro();so();no();io();it();$t();tt();U=class e extends xt{constructor(n){super();T(this,"f","");T(this,"G");T(this,"mt",[]);T(this,"yt");T(this,"W");T(this,"Ct");T(this,"z");if(mt(n)){this.z=[n];return}if(n instanceof Z||typeof n=="function"){this.W=[n];return}if(!Array.isArray(n)){this.f=String(n),this.O=this.f;return}if(H(n,s=>s instanceof Z||typeof s=="function",{mode:"some"})){this.W=n;return}let r=n.length,o=[],i;for(let s=0;s<r;s++){let a=n[s];mt(a)?(i??(i=[])).push(a):o.push(String(a))}i&&(this.z=i),o.length>0&&(this.G=o)}static isColExpr(n){if(!v(n))return!1;try{return"evaluate"in n&&typeof n.evaluate=="function"}catch{return!1}}static toColExpr(n){return Je(n,"Column reference cannot be null or undefined."),e.isColExpr(n)?n:new e(n)}};uu(U,[Xe,He,tr,Ye,Qe])});function Vn(e,t={strict:!0}){let n=t,r=new U(Io);return r.P=e,n.name&&(r.O=n.name),r.p.push(o=>{let i=o.length,s=n.strict!==!1,a=(g,x)=>g===void 0?x:z(g<0?i+g:g,{min:0,max:i}),l=a(n.startIndex,0),c=a(n.endIndex,i),u=Math.max(0,c-l),f=n.n!==void 0?n.n:u;if(s){if(f!==i)throw new ut(`Column height mismatch: seqRange length ${f} does not match DataFrame height ${i}`)}else{let g=n.pad??!1,x=n.truncate??!1;if(g&&!x&&f>u)throw new ut(`Cannot pad seqRange output: specified length ${f} starting at index ${l} exceeds slice width ${u} (requires truncation).`);if(x&&!g&&f<u)throw new ut(`Cannot truncate seqRange output: specified length ${f} starting at index ${l} is less than slice width ${u} (requires padding).`)}let p=n.mode||"cumulative",m=n.step!==void 0?n.step:1,y=n.dtype?g=>n.dtype.coerce(g):g=>g,d=y(!s&&n.padValue!==void 0?n.padValue:null),h=s&&n.dtype?.allocate?n.dtype.allocate(i):new Array(i).fill(d);return Ci(h,e,{mode:p,step:m,coerce:y,startIndex:s?0:l,endIndex:s?i:Math.min(l+f,c)}),h}),r}var ao=j(()=>{"use strict";Dt();Gt();tt();it()});function an(e,t={}){let n=Vn(e,{...t,mode:"constant"});return n.B=!0,n}var nr=j(()=>{"use strict";ao()});var fa={};To(fa,{duration:()=>lo});function lo(e={}){if(typeof e=="string"){let s=Wr(e,{to:"ms"}),a=an(s).alias("duration");return a._=new Et("ms"),a}let t=0,n=null,r=!1,o=e;for(let s in o){let a=tn[s];if(a===void 0)continue;let l=o[s];if(l==null)continue;if(r=!0,M(l)){t+=l*a;continue}let c=U.toColExpr(l).mul(a);n=n?n.add(c):c}if(!r)throw new N("At least one duration component must be specified for $df.duration().");let i=n?t!==0?n.add(an(t)):n:an(t);return i._=new Et("ms"),i.alias("duration")}var uo=j(()=>{"use strict";Dt();nr();Fn();tt();it()});var co,tr,so=j(()=>{"use strict";Fn();tt();on();qt();it();Ot();co=class{constructor(t){T(this,"expr",t)}tt(){let t=this.expr._;return t instanceof Lt?t.timeZone:null}Et(){let t=this.expr._;return t instanceof Lt?t.timeUnit:null}nt(t){return S(this.expr,k(n=>{let r=X(n);return r?t(r):null}))}castTimeUnit(t){return this.expr.cast(new Lt(t,this.tt()))}century(t){return this.year(t).sub(1).floordiv(100).add(1)}convertTimeZone(t){let n=this.tt();if(this.expr._ instanceof Lt&&n===null)throw new N('convertTimeZone() requires a timezone-aware Datetime column. Use .dt.replace({ timeZone: "..." }) to assign a timezone first.');return this.expr.cast(new Lt(this.Et()??"ms",t))}date(){return this.replace({hour:0,minute:0,second:0,ms:0})}day(t){return this.strftime({format:"%d",timeZone:t}).cast(yt)}daysInMonth(t){return this.monthEnd().dt.day(t)}epoch(t="ms"){return this.nt(n=>ws(n,t))}hour(t){return this.strftime({format:"%H",timeZone:t}).cast(yt)}isBusinessDay(t={}){return this.nt(n=>Ds(n,t))}isLeapYear(t){let n=this.year(t);return n.mod(4).eq(0).and(n.mod(100).ne(0)).or(n.mod(400).eq(0)).cast(Un)}isoWeek(t){return this.strftime({format:"%V",timeZone:t}).cast(yt)}isoYear(t){return this.strftime({format:"%G",timeZone:t}).cast(yt)}microsecond(t){return this.strftime({format:"%f",timeZone:t}).cast(yt)}millennium(t){return this.year(t).sub(1).floordiv(1e3).add(1)}millisecond(t){return this.strftime({format:"%ms",timeZone:t}).cast(yt)}minute(t){return this.strftime({format:"%M",timeZone:t}).cast(yt)}month(t){return this.strftime({format:"%m",timeZone:t}).cast(yt)}monthEnd(){return this.replace({day:-1,hour:0,minute:0,second:0,ms:0})}monthStart(){return this.replace({day:1,hour:0,minute:0,second:0,ms:0})}nanosecond(t){return this.microsecond(t).mul(1e3)}offsetDay(t,n={}){let o=n?.excludeWeekdays?.length||n?.holidays||n?.roll?S(this.expr,G(this.expr,t,(s,a)=>{let l=X(s);return l?Is(l,a,n):null})):t,{duration:i}=(uo(),Eo(fa));return this.expr.add(i({days:o}))}ordinalDay(t){return this.strftime({format:"%j",timeZone:t}).cast(yt)}quarter(t){return this.month(t).div(3).ceil()}replace(t){return S(this.expr,k(n=>{let r=X(n);return r?Cs(r,t):null}))}second(){return this.strftime({format:"%S",timeZone:"UTC"}).cast(yt)}strftime(t){let n=this.tt(),r=n&&!t.timeZone?{...t,timeZone:n}:t;return this.nt(o=>ie(o,r))}time(){return this.strftime({format:"%H:%M:%S.%ms",timeZone:"UTC"})}timestamp(t="ms"){return this.epoch(t)}totalDays(){return this.totalHours().div(24)}totalHours(){return this.totalMinutes().div(60)}totalMicroseconds(){return this.totalMilliseconds().mul(Wn)}totalMilliseconds(){return this.expr}totalMinutes(){return this.totalSeconds().div(60)}totalNanoseconds(){return this.totalMilliseconds().mul(zn)}totalSeconds(){return this.totalMilliseconds().div(_t)}utcOffset(t,n={}){return S(this.expr,k(r=>{let o=X(r);return o?Cr(o,t,n):null}))}week(t){return this.isoWeek(t)}weekday(t){return this.strftime({format:"%u",timeZone:t}).cast(yt)}year(t){return this.strftime({format:"%Y",timeZone:t}).cast(yt)}},tr=class extends xt{get dt(){return new co(this)}}});function gn(){return new U("*")}var ma=j(()=>{"use strict";Dt()});function fe(e){let t=new U("*");return t.mt=Array.isArray(e)?e:[e],t}var pa=j(()=>{"use strict";Dt()});function ya(...e){let t=e.length===1&&Array.isArray(e[0])?e[0]:e,n=new U(Do);return n.p.push((r,o)=>{let i=r.length,s=t.length,a=new Array(s),l=new Array(s);for(let u=0;u<s;u++){let f=t[u],p=Bn(f,o,i);a[u]=p,l[u]=Pn(f,p,o,i)}let c=new Array(i);for(let u=0;u<i;u++){let f=null;for(let p=0;p<s;p++){let m=a[p],y=l[p]?m[u]:m;if(y!=null){f=y;break}}c[u]=f}return c}),n}var da=j(()=>{"use strict";Dt();qt();Gt()});function ha(e){return new er([e])}var er,fo,ga=j(()=>{"use strict";Dt();qt();Gt();er=class{constructor(t,n=[]){T(this,"_predicates",t);T(this,"_values",n)}then(t){return new fo(this.et,[...this.L,t])}},fo=class e extends U{constructor(n=[],r=[],o=null){super(Ro);T(this,"_predicates",n);T(this,"_values",r);T(this,"_otherwise",o);this.p=[(i,s)=>{let a=i.length,l=this.et,c=this.L,u=l.length,f=new Array(u),p=new Array(u),m=new Array(u),y=new Array(u);for(let b=0;b<u;b++){let O=l[b],w=c[b],A=Bn(O,s,a),I=Bn(w,s,a);f[b]=A,p[b]=I,m[b]=Pn(O,A,s,a),y[b]=Pn(w,I,s,a)}let d=this.rt,h=Bn(d,s,a),g=Pn(d,h,s,a),x=new Array(a);for(let b=0;b<a;b++){let O=!1;for(let w=0;w<u;w++)if((m[w]?f[w][b]:f[w])===!0){x[b]=y[w]?p[w][b]:p[w],O=!0;break}O||(x[b]=g?h[b]:h)}return x}]}get Rt(){return this.rt}get ot(){return this.rt!=null?[...this.L,this.rt]:this.L}when(n){return new er([...this.et,n],this.L)}otherwise(n){return new e(this.et,this.L,n)}}});function ba(e){return U.toColExpr(e).implode()}var xa=j(()=>{"use strict";Dt()});function wa(){return new U(Sn)}var Aa=j(()=>{"use strict";Dt();Gt()});function Sa(e,...t){let n;Array.isArray(e)||e&&typeof e=="object"&&!U.isColExpr(e)?n=e:n=[e,...t];let r=an({}).struct.withFields(n);return delete r.B,delete r.P,r.f=Co,r.alias("struct")}var Oa=j(()=>{"use strict";Dt();nr();Gt()});function Ln(e,t){if(e==null)return;if(e instanceof Z)return e;if(typeof e=="object"&&("_ops"in e||"_literalValue"in e||"_targetType"in e))return me(e,t);let n=Q(e);if(typeof n=="string")return t[n]??D.Utf8;if(typeof n=="boolean")return D.Boolean;if(typeof n=="bigint")return Tn(n,{range:"Int64"})?D.Int64:D.UInt64;if(M(n))return At(n,{range:"Int32"})?D.Int32:Number.isInteger(n)?D.Int64:D.Float64;if(L(n))return D.Datetime;if(Xi(n,{strict:!0}))return D.Binary;if(Array.isArray(n)){let r,o=n.length;for(let i=0;i<o;i++){let s=n[i];if(s!=null&&(r=Ln(s,t)))break}return D.Array(r??D.Utf8)}if(ot(n)){let r=Jt?Jt.call(n):n.constructor.name,o=fu[r];return o?D.Array(o):D.Binary}if(v(n))return D.Object}function Ta(e,t,n){if(!e||!t)return;if(n&&n.length>0){let a=!1;for(let l=0;l<n.length;l++){let c=n[l];if(c!=null){if(typeof c!="boolean"){a=!1;break}a=!0}}if(a)return D.Boolean}let r=e instanceof Et,o=t instanceof Et,i=e.isTemporal&&!r,s=t.isTemporal&&!o;if(i||s){if(i&&s){let a=e.timeUnit||t.timeUnit||"ms";return new Et(a)}return i?e:t}if(r||o)return r?e:t;if(e.isUtf8||t.isUtf8)return D.Utf8;if(e.isNumeric&&t.isNumeric){let a=e instanceof kn||t instanceof kn,l=e instanceof Nn||t instanceof Nn,c=e instanceof Qt||t instanceof Qt;if(a||l&&c)return D.Float64;if(l)return D.Float32;if(c)return e instanceof Qt?e:t;if(n!==void 0){let p={range:{min:-1/0,max:1/0}},m=n.length;for(let y=0;y<m;y++){let d=n[y];if(M(d)&&!At(d,p))return D.Float64}}if(e===t)return e;let u=e.name,f=t.name;return u.endsWith("64")||f.endsWith("64")?D.Int64:u.endsWith("32")||f.endsWith("32")?u==="UInt32"&&f==="UInt32"?D.UInt32:D.Int32:u.endsWith("16")||f.endsWith("16")?u==="UInt16"&&f==="UInt16"?D.UInt16:D.Int16:u==="UInt8"&&f==="UInt8"?D.UInt8:D.Int8}}function me(e,t,n){if(!e)return;if(e._)return e._;if(e.yt instanceof Z)return e.yt;if(e.B&&e.P!==void 0)return Ln(e.P,t);if(e.C)return Ta(Ln(e.C.left,t),Ln(e.C.right,t),n);if(e.ot){let s,a=e.ot.length;for(let l=0;l<a;l++){let c=Ln(e.ot[l],t);c&&(s?s!==c&&s.isNumeric&&c.isNumeric&&(s=Ta(s,c,n)??s):s=c)}if(s)return s}if(e.F&&e.Z){let s=Ln(e.F,t);if(s instanceof se)return s.fields?.[e.Z]}let r=e.f?t[e.f]:void 0,o=n?.[0],i=(!e.p||e.p.length===0)&&!e.A&&!e.R;if(r){if(r instanceof Mn&&(e.Q||n?.rowMap))return r.innerType;if(!(r instanceof Mn)&&Array.isArray(o))return D.Array(r);if(i||r.isTemporal&&e.A&&(L(o)||typeof o=="string")||r instanceof Et&&e.A&&M(o))return r}if(e.A&&M(o))return!Number.isInteger(o)||r?.isNumeric&&!(r instanceof Et)?D.Float64:D.Int32}var fu,Ea=j(()=>{"use strict";Fn();$t();it();fu={Int8Array:D.Int8,Uint8Array:D.UInt8,Uint8ClampedArray:D.UInt8,Int16Array:D.Int16,Uint16Array:D.UInt16,Int32Array:D.Int32,Uint32Array:D.UInt32,BigInt64Array:D.Int64,BigUint64Array:D.UInt64,Float32Array:D.Float32,Float64Array:D.Float64}});var pe=j(()=>{"use strict";Gt();_o();on();Qr();no();ro();so();io();Dt();nr();ma();pa();da();ga();xa();ao();Aa();Oa();uo();Ea();qt()});var ye,Ia=j(()=>{"use strict";vn();ze();pe();ye=class{constructor(t,n,r,o,i,s,a){T(this,"$");T(this,"it");T(this,"ht");T(this,"X");T(this,"bt");T(this,"H");T(this,"st");this.$=t,this.it=n,this.ht=r,this.X=o,this.bt=i,this.H=s,this.st=a}xt(t){let n=this.$.size,r=t.length,o={},i={};for(let a=0;a<r;a++){let l=t[a];o[l]=new Array(n),i[l]=this.H[l]}let s=0;for(let a of this.$.values()){if(a.length===0)continue;let l=a[0];for(let c=0;c<r;c++){let u=t[c],f=this.st?.[u]?this.st[u][s]:this.X[u]?.[l];o[u][s]=f===void 0?null:f}s++}return{newColumns:o,outSchema:i,groupCount:s}}ut(t){let n=t.length,r=new Array(n);for(let o=0;o<n;o++)r[o]=String(t[o]);return r}toDataframe(){let t=this.ut(this.it),{newColumns:n,outSchema:r,groupCount:o}=this.xt(t);return q.S(n,r,o)}agg(...t){let n=this.ut(this.ht),r=this.ut(this.it),o=sn(t.flat(),n,r,this.H,this.X),{newColumns:i,outSchema:s,groupCount:a}=this.xt(r),l=this.$.size;for(let c=0;c<o.length;c++){let u=o[c],f=u.O||u.f||"*";if(!u.A)i[f]=u.evaluate(i,l);else{let p=u.J(u.N,this.X,this.bt),m=new Array(l),y=0;for(let d of this.$.values()){if(d.length===0)continue;let h=new Array(d.length);for(let g=0;g<d.length;g++)h[g]=p[d[g]];m[y]=u.A(h),y++}i[f]=u.Y(u.N,m,i)}}for(let c of o){let u=c.O||c.f||"*",f=me(c,this.H,i[u])||rn(i[u]);s[u]=f,i[u]=Kt(i[u],f,a)}return q.S(i,s,a)}}});function Ca(e,t,n,r){if(ot(e)&&ot(t)){t.set(e,n);return}let o=t;for(let i=0;i<r;i++)o[n+i]=e[i]}function mu(e,t,n){if(e==null)throw new Y(`Invalid input to ${t} at index ${n}: item cannot be null or undefined.`);if(e instanceof q)return[e];if(Ft(e))return[new q(e)];if(V(e)){if(H(e,q,{mode:"every"}))return e;if(H(e,"plainObject",{mode:"every"}))return[new q(e)];let r=H(e,q,{mode:"some"});for(let o=0;o<e.length;o++)if(r?!(e[o]instanceof q):!Ft(e[o]))throw new Y(r?`Invalid input to ${t} at index ${n}, sub-index ${o}: nested array must contain only DataFrame instances.`:`Invalid input to ${t} at index ${n}, row ${o}: rows must be plain objects.`)}throw new Y(`Invalid input to ${t} at index ${n}: expected DataFrame, row array, or column dictionary.`)}function Da(e,t,n,r,o=!1){let i={};for(let a=0;a<t.length;a++){let l=t[a],c=n[l],u=!!(o&&c);if(u){for(let f=0;f<e.length;f++)if(!ot(e[f].t[l])){u=!1;break}}i[l]=u?c.allocate(r):new Array(r).fill(null)}let s=0;for(let a=0;a<e.length;a++){let l=e[a],c=l.height;if(c!==0){for(let u=0;u<t.length;u++){let f=t[u],p=l.t[f];p!==void 0&&Ca(p,i[f],s,c)}s+=c}}return q.S(i,n,r)}function de(e,{how:t="vertical",horizontal:n}={}){if(e==null)throw new Y("Invalid input to concat: rawItems cannot be null or undefined.");let r=Array.isArray(e)?e:[e],o=[];for(let i=0;i<r.length;i++)o.push(...mu(r[i],"concat",i));if(o.length===0)return q.S({},{},0);if(o.length===1&&t!=="horizontal")return o[0];switch(t){case"vertical":{let i=null,s=0;for(let l=0;l<o.length;l++)s+=o[l].height,!i&&o[l].height>0&&(i=o[l]);if(!i)return q.S({},{},0);let a=Object.keys(i.t);for(let l=0;l<o.length;l++){let c=o[l];if(c.height===0)continue;let u=Object.keys(c.t);if(a.length!==u.length)throw new Y(`[Strict Vertical] Column count mismatch at index ${l}.`);for(let f=0;f<a.length;f++){let p=a[f];if(p!==u[f])throw new Y(`[Strict Vertical] Schema mismatch at position ${f} in DF ${l}. Expected column "${p}", but found "${u[f]}".`);let m=i.schema[p],y=c.schema[p];if(m&&y&&!m.equals(y))throw new hn(`[Strict Type Check] Schema type mismatch for column "${p}": expected ${m.name}, found ${y.name}.`)}}return Da(o,a,i.schema,s,!0)}case"horizontal":{let i=n?.strict??!0,s=0;for(let u=0;u<o.length;u++)o[u].height>s&&(s=o[u].height);let a=new Set,l={},c={};for(let u=0;u<o.length;u++){let f=o[u],p=f.height;if(i&&p!==s)throw new ut(`[Horizontal] Row count mismatch at index ${u}. Expected ${s}, got ${p}. Set strict=false to allow padding.`);Object.assign(c,f.schema);let m=Object.keys(f.t);for(let y=0;y<m.length;y++){let d=m[y];if(a.has(d))throw new Y(`[Horizontal] Duplicate column name "${d}" detected. Horizontal concat requires unique names.`);a.add(d);let h=f.t[d];if(p===s)l[d]=ot(h)?Array.from(h):h;else{let g=new Array(s).fill(null);Ca(h,g,0,p),l[d]=g}}}return q.S(l,c,s)}case"diagonal":{let i=new Set,s=0;for(let c=0;c<o.length;c++){s+=o[c].height;for(let u of Object.keys(o[c].t))i.add(u)}let a=Array.from(i),l={};for(let c=0;c<a.length;c++){let u=a[c],f=null;for(let p=0;p<o.length;p++){let m=o[p].schema[u];if(m){if(f===null)f=m;else if(!f.equals(m))throw new hn(`[Strict Type Check] Schema type mismatch for column "${u}": expected ${f.name}, found ${m.name}.`)}}l[u]=f||D.Utf8}return Da(o,a,l,s,!1)}}}var mo=j(()=>{"use strict";vn();$t();it();tt()});var q,vn=j(()=>{"use strict";pe();Ia();Ot();ne();$t();it();tt();mo();ze();q=class e{constructor(t,n,r){T(this,"t");T(this,"r");T(this,"a",{});if(Array.isArray(t)){let{columns:o,height:i}=Zs(t);this.t=o,this.r=i}else v(t)?(this.t=t,this.r=zr(t,r)):(this.t={},this.r=0);n?this.wt(n):this.r>0||Object.keys(this.t).length>0?this.Dt():this.a={}}static S(t,n,r){zr(t,r);let o=Object.create(e.prototype);return o.t=t,o.a=n,o.r=r,o}wt(t){this.a=t;let n=Object.keys(t),r={};for(let o of n){let i=t[o],s=this.t[o];r[o]=s?Kt(s,i,this.r):Kt(new Array(this.r).fill(null),i,this.r)}this.t=r}Dt(){let t={},n=Object.keys(this.t),r=n.length;for(let o=0;o<r;o++){let i=n[o];t[i]=rn(this.t[i])}this.wt(t)}ct(t){let n=t.flat(1/0),r=[],o=n.length;for(let i=0;i<o;i++){let s=n[i];if(typeof s=="string")r.push(new U(s));else if(U.isColExpr(s))r.push(s);else if(s instanceof Z||typeof s=="function"||mt(s))r.push(new U(s));else if(v(s)){let a=Object.keys(s),l=a.length;for(let c=0;c<l;c++){let u=a[c],f=s[u];if(U.isColExpr(f))r.push(f.alias(u));else{let p=new U(u);p.evaluate=(m,y)=>new Array(y).fill(f),r.push(p)}}}}return r}clone(){return this.select(gn())}get columns(){return Object.keys(this.t)}concat(t,n={}){let r=H(t,e,{mode:"every",allowEmpty:!1})?t:[t];return de([this,...r],n)}drop(...t){return this.select(fe(t.flat()))}dropNulls(t){return this.filter(t?new U(t).isNotNull():gn().isNotNull())}get dtypes(){let t=Object.keys(this.t),n=t.length,r=new Array(n);for(let o=0;o<n;o++)r[o]=this.a[t[o]];return r}explode(t,n){let r=Array.isArray(t)?t:[t],o=this.ct(r),i=sn(o,Object.keys(this.t),void 0,this.a,this.t),s=new Set,a=i.length;for(let f=0;f<a;f++){let p=i[f],m=p.f||p.O;if(!m||m==="*")throw new Y("Expression passed to explode must have a column name.");et(m,this.t,"Explode column"),s.add(m)}let l=Object.keys(this.t),c=[],u=l.length;for(let f=0;f<u;f++){let p=l[f];c.push(s.has(p)?new U(p).arr.explode(n):new U(p))}return this.select(...c)}fillNull(t={}){return this.r===0?this:this.withColumns(gn().fillNull(t))}filter(...t){let n=this.r;if(n===0)return this;let r=Object.keys(this.t),o=[],i=[];for(let d=0;d<t.length;d++){let h=t[d];typeof h=="function"?i.push(h):o.push(h)}let s=sn(o,r,void 0,this.a,this.t),a=s.length,l=i.length,c=new Array(a);for(let d=0;d<a;d++)c[d]=s[d].evaluate(this.t,n);let u=0,f=null;if(l>0){let d=this.t;f={};for(let h=0;h<r.length;h++){let g=r[h],x=d[g];Object.defineProperty(f,g,{get(){let b=x[u];return b===void 0?null:b},enumerable:!0,configurable:!0})}}let p=new Array(n),m=0;t:for(let d=0;d<n;d++){for(let h=0;h<a;h++)if(!c[h][d]){p[d]=!1;continue t}if(f){u=d;for(let h=0;h<l;h++)if(!i[h](f)){p[d]=!1;continue t}}p[d]=!0,m++}let y={};for(let d=0;d<r.length;d++){let h=r[d];y[h]=In(this.t[h],p)}return e.S(y,this.a,m)}groupBy(t){let n=bt(t),r=Nt(t,"string");for(let s=0;s<r.length;s++)et(r[s],this.t,"Grouping key");let o=ce(this.t,r,this.r),i=Object.keys(this.t);return new ye(o,n,i,this.t,this.r,this.a)}groupByDynamic(t,n){if(!n||n.every==null)throw new N('groupByDynamic requires "every" option');let{every:r,period:o,offset:i=0,truncate:s=!0,closed:a="left",label:l="left",startBy:c="window",includeBoundaries:u=!1,checkSorted:f=!0,by:p,groupBy:m}=n,y=typeof t=="string"?t:U.isColExpr(t)?t.f??String(t):String(t);if(et(y,this.t,"Index column"),a!=="left"&&a!=="right"&&a!=="both"&&a!=="none")throw new N(`Invalid "closed" option: "${a}". Expected "left", "right", "both", or "none"`);if(l!=="left"&&l!=="right"&&l!=="datapoint")throw new N(`Invalid "label" option: "${l}". Expected "left", "right", or "datapoint"`);let d=typeof c=="string"?c.toLowerCase():"",h=d in mr;if(d!=="window"&&d!=="datapoint"&&!h)throw new N(`Invalid "startBy" option: "${c}". Expected "window", "datapoint", or a day of week`);let g=Ge(i,{fallback:0});if(!M(g))throw new N(`Invalid "offset" option: ${i}`);let x=a==="left"||a==="both",b=a==="right"||a==="both",O=x?"left":"right",w=b?"right":"left",A="_lower_boundary",I="_upper_boundary",C=typeof r=="string"?le(r):null,R=typeof o=="string"?le(o):null,F=m??p,E=F?Nt(bt(F),"string"):[],_=Array.from(new Set(E));for(let rt=0;rt<_.length;rt++){if(_[rt]===y)throw new N(`Cannot group by index column "${y}" in secondary grouping keys`);et(_[rt],this.t,"Secondary grouping key")}let P=this.r,W=this.t[y],B=new Float64Array(P),st=this.a[y]?.name==="Datetime";for(let rt=0;rt<P;rt++){let dt=W[rt],xn=$(dt),Kn=xn===null?X(dt):null;Kn&&(st=!0),B[rt]=xn??Kn?.getTime()??NaN}let kt=st&&!!(C?.months||R?.months),ct=0,ft=0;if(!kt){if(ct=Ge(r),ft=Ge(o,{fallback:ct}),!M(ct)||ct<=Number.EPSILON)throw new N(`"every" must be positive, got ${r}`);if(!M(ft)||ft<=Number.EPSILON)throw new N(`"period" must be positive, got ${o}`)}let $n=_.length>0&&P>0?ce(this.t,_,P):new Map([["",Array.from({length:P},(rt,dt)=>dt)]]),ln=[..._,y,...u?[A,I]:[]],ho=new Map,bn={};for(let rt=0;rt<ln.length;rt++)bn[ln[rt]]=[];let Ra=R??C,_a=0;for(let rt of $n.values()){let dt=[],xn=-1/0,Kn=!1;for(let J=0;J<rt.length;J++){let wt=rt[J],Ut=B[wt];if(M(Ut)){if(Ut<xn&&f)throw new Y(`Index column "${y}" is not sorted in ascending order`);Ut<xn&&(Kn=!0),dt.push(wt),xn=Ut}}let or=dt.length;if(or===0)continue;Kn&&dt.sort((J,wt)=>B[J]-B[wt]);let wn=B[dt[0]],go=B[dt[or-1]],bo=null,ir=0;if(kt){let J=new Date(wn),wt=C.months%12===0?0:J.getUTCMonth();bo=d==="datapoint"?J:nt(J.getUTCFullYear(),wt,1)}else{let J;if(d==="datapoint")J=wn+g;else if(h&&st){let wt=(new Date(wn).getUTCDay()-mr[d]+7)%7;J=Math.floor(wn/St)*St-wt*St+g}else J=Math.floor((wn-g)/ct)*ct+g;ir=!x&&wn-J<=1e-9?J-ct:J}let qn=0;for(;;){let J=kt?Jr(bo,C,qn).getTime():ir+qn*ct;if(x?J>go:J>=go)break;let wt=kt?Jr(new Date(J),Ra).getTime():J+ft;qn++;let Ut=fn(dt,J,{side:O,getValue:(Ct,Gn)=>B[Gn]}),xo=fn(dt,wt,{side:w,getValue:(Ct,Gn)=>B[Gn]});if(Ut>=xo){let Ct=!kt&&Ut<or?B[dt[Ut]]:NaN,Gn=M(Ct)&&Ct>=wt,ka=b?Ct-ft:Ct-ft+1e-9;Gn&&(qn=Math.max(qn,Math.floor((ka-ir)/ct)));continue}let wo=dt.slice(Ut,xo),Ao=wo[0],So=st?new Date(J):J,Oo=st?new Date(wt):wt;bn[y].push(!s||l==="datapoint"?W[Ao]:l==="right"?Oo:So),u&&(bn[A].push(So),bn[I].push(Oo));for(let Ct=0;Ct<_.length;Ct++)bn[_[Ct]].push(this.t[_[Ct]][Ao]);ho.set(`__dyn_${_a++}__`,wo)}}let rr=u?this.a[y]||(st?D.Datetime:D.Float64):null,Na=rr?{...this.a,[A]:rr,[I]:rr}:this.a;return new ye(ho,ln,Object.keys(this.t),this.t,this.r,Na,bn)}head(t=10){return this.limit(t,{offset:0,from:"start"})}get height(){return this.r}hstack(t,n={}){return this.concat(t,{how:"horizontal",horizontal:n})}insertColumn(t,n,r){let o=U.toColExpr(r).alias(n),i=Object.keys(this.t),s=i.length,a=[];for(let c=0;c<s;c++){let u=i[c];u!==n&&a.push(u)}let l=z(t,{min:0,max:a.length});return a.splice(l,0,o),this.select(...a)}item(t,n){let r=this.r,o=Object.keys(this.t),i=o.length;if(t===void 0&&n===void 0){if(r!==1||i!==1)throw new Y("DataFrame.item() can only be called without arguments if the shape is (1, 1).");return this.t[o[0]][0]}if(t===void 0||n===void 0)throw new Y("DataFrame.item() requires both row and column to be specified if not empty.");if(t<0||t>=r)throw new ut(`Row index ${t} is out of bounds for DataFrame height ${r}.`);let s=typeof n=="number"?o[n]:n;if(s===void 0||this.t[s]===void 0)throw typeof n=="number"?new ut(`Column index ${n} is out of bounds for DataFrame width ${i}.`):new nn(n);return this.t[s][t]}*iterColumns(){let t=Object.values(this.t),n=t.length;for(let r=0;r<n;r++)yield t[r]}*iterRows({named:t=!1}={}){let n=this.r;if(n===0)return;if(t){let i=this.t,s=Object.keys(i);for(let a=0;a<n;a++)yield Xr(i,a,s);return}let r=Object.values(this.t),o=r.length;for(let i=0;i<n;i++){let s=new Array(o);for(let a=0;a<o;a++)s[a]=r[a][i];yield s}}join(t,n={}){if(!t||!(t instanceof e))throw new N('join() requires a valid DataFrame in "other"');let{on:r,leftOn:o,rightOn:i,how:s="inner",suffixes:a=["","_right"],joinNulls:l=!1,coalesce:c=!0,maintainOrder:u="none"}=n,f=r!==void 0,p=o!==void 0||i!==void 0;if(s==="cross"&&(f||p))throw new N('Cannot specify "on", "leftOn", or "rightOn" when how is "cross"');if(f&&p)throw new N('Cannot specify both "on" and "leftOn"/"rightOn"');if(o!==void 0!=(i!==void 0))throw new N('join() requires both "leftOn" and "rightOn"');if(s!=="cross"&&!f&&!p)throw new N('join() requires "on" or "leftOn"/"rightOn"');let m=[],y=[];if(o!==void 0&&i!==void 0){if(m=Nt(o,"string"),y=Nt(i,"string"),m.length===0||y.length===0)throw new N("join() requires non-empty key arrays");if(m.length!==y.length)throw new N(`join() "leftOn" length (${m.length}) must match "rightOn" length (${y.length})`)}else if(r!==void 0&&(m=Nt(r,"string"),y=m,m.length===0))throw new N('join() requires at least one key column in "on"');let d=m.length;for(let O=0;O<d;O++)et(m[O],this.t,"Join key"," in the left DataFrame."),et(y[O],t.t,"Join key"," in the right DataFrame.");let g={...n,how:s,suffixes:a,joinNulls:l,coalesce:c,maintainOrder:typeof u=="boolean"?u?"left":"none":u??"none"},{leftIndices:x,rightIndices:b}=ea(this.t,t.t,this.r,t.r,m,y,g);return We(this.t,t.t,this.a,t.a,x,b,m,y,{suffixes:a,coalesce:c,how:s})}joinAsof(t,n){if(!t||!(t instanceof e))throw new N('joinAsof() requires a valid DataFrame in "other"');let{on:r,leftOn:o,rightOn:i,by:s,leftBy:a,rightBy:l,strategy:c="backward",tolerance:u,allowExactMatches:f=!0,suffixes:p=["","_right"],coalesce:m=!0,checkSorted:y=!0}=n??{},d=String(o??r??""),h=String(i??r??"");if(!d||!h)throw new N('joinAsof() requires "on" or "leftOn"/"rightOn"');let g=Nt(a??s,"string"),x=Nt(l??s,"string");if(g.length!==x.length)throw new N(`Partition key length mismatch: ${g.length} vs ${x.length}`);let b=g.length;for(let R=0;R<b;R++)et(g[R],this.t,"Partition key"," in the left DataFrame."),et(x[R],t.t,"Partition key"," in the right DataFrame.");let O={...n,strategy:c,tolerance:u,allowExactMatches:f,suffixes:p,coalesce:m,checkSorted:y},{leftIndices:w,rightIndices:A}=ra(this.t,t.t,this.r,t.r,d,h,g,x,O),I=[d,...g],C=[h,...x];return We(this.t,t.t,this.a,t.a,w,A,I,C,{suffixes:p,coalesce:m,how:"left"})}joinWhere(t,...n){if(!t||!(t instanceof e))throw new N('joinWhere() requires a valid DataFrame in "other"');let r={},o=[];for(let c=0;c<n.length;c++){let u=n[c];if(Array.isArray(u)){for(let f=0;f<u.length;f++)o.push(U.toColExpr(u[f]));continue}if(v(u)&&!U.isColExpr(u)&&!("_ops"in u)){r={...r,...u};continue}o.push(U.toColExpr(u))}let{how:i="inner",suffixes:s=["","_right"]}=r;if(i!=="inner"&&i!=="left"&&i!=="right")throw new N(`joinWhere() "how" must be one of "inner", "left", "right", got "${i}"`);let{leftIndices:a,rightIndices:l}=oa(this.t,t.t,this.r,t.r,o,{how:i,suffixes:s});return We(this.t,t.t,this.a,t.a,a,l,[],[],{suffixes:s,coalesce:!1,how:i})}limit(t,{offset:n=0,from:r="start"}={}){let o=this.r,i=z(Math.floor(t),{min:0,max:o}),s=z(Math.floor(n),{min:0,max:o}),a=s,l=z(s+i,{min:0,max:o});r==="end"&&(l=z(o-s,{min:0,max:o}),a=z(l-i,{min:0,max:o}));let c=z(l-a,{min:0}),u={},f=Object.keys(this.t),p=f.length;for(let m=0;m<p;m++){let y=f[m];u[y]=this.t[y].slice(a,l)}return e.S(u,this.a,c)}pivot(t){if(this.r===0)return e.S({},{},0);let{index:n,columns:r,values:o}=t,i=Nt(n,"string"),s=i.length;for(let w=0;w<s;w++)et(i[w],this.t,"Pivot index key");let a=String(r),l=String(o);et(a,this.t,"Pivot column key"),et(l,this.t,"Pivot values key");let c=new Map,u=[],f=new Set,p=this.r,m=this.t[a],y=this.t[l];for(let w=0;w<p;w++){let A=jn(this.t,i,w);f.add(String(m[w])),c.get(A)===void 0&&(c.set(A,c.size),u.push(w))}let d=c.size,h={},g={};for(let w=0;w<s;w++){let A=i[w];h[A]=this.t[A],this.a[A]&&(g[A]=this.a[A])}let x=Yr(h,u),b=Array.from(f),O=this.a[l]||D.Utf8;for(let w=0;w<b.length;w++){let A=b[w];x[A]=new Array(d).fill(null),g[A]=O}for(let w=0;w<p;w++){let A=jn(this.t,i,w),I=c.get(A),C=String(m[w]);x[C][I]=y[w]}return e.S(x,g,d)}rename(t={}){let n=Object.keys(this.t),r=n.length,o=new Array(r);for(let i=0;i<r;i++){let s=n[i],a=t[s];o[i]=a?new U(s).alias(a):s}return this.select(...o)}reverse(){return this.r===0?this:this.select(gn().reverse())}get schema(){return this.a}select(...t){let n=this.ct(t),r=Object.keys(this.t),o=sn(n,r,void 0,this.a,this.t),i=o.length;if(i===0)return e.S({},{},this.r);let s={},a={},l=new Array(i),c=new Array(i),u=new Set,f=null;for(let y=0;y<i;y++){let d=o[y],h=d.O||d.f||"*";if(u.has(h))throw new Y(`Duplicate column selection: "${h}"`);u.add(h);let g=It(d,this.t,this.r);l[y]=g,c[y]=h;let x=g&&g.rowMap;if(!x)continue;if(!f){f=x;continue}let b=x.length;if(b!==f.length)throw new ut(`Mismatched explode heights: Column "${h}" has length ${b}, but expected ${f.length}`);for(let O=0;O<b;O++)if(x[O]!==f[O])throw new ut(`Mismatched explode heights: Column "${h}" has mismatched row lengths`)}let p=f?f.length:this.r,m=i>0;for(let y=0;y<i;y++){let d=o[y];if(!(d.A!=null&&(!d.I||d.I.length===0))&&!d.B){m=!1;break}}for(let y=0;y<i;y++){let d=c[y],h=l[y],g=h&&h.rowMap,x=V(h)?h.length:0,b=f&&!g?this.r:p;if(x!==b)throw new ut(`Column height mismatch for "${d}": got ${x}, expected ${b}`);f&&!g&&(h=ue(h,f)),l[y]=h}m&&(p=1);for(let y=0;y<i;y++){let d=o[y],h=c[y],g=l[y],x=me(d,this.a,g)||rn(g);a[h]=x,s[h]=Kt(g,x,p)}return e.S(s,a,p)}get shape(){return[this.height,this.width]}slice(t,n){let r=this.r,o=z(t<0?r+t:t,{min:0,max:r}),i=z(n===void 0?r:n<0?r+n:n,{min:0,max:r}),s=z(i-o,{min:0});return this.limit(s,{offset:o})}sort(t){if(!t?.by||this.r===0)return this;let{by:n,descending:r=!1,nullsLast:o=!0,customComp:i}=t,s=bt(n),a=Object.values(this.select(...s).t),l=this.r;if(l===1)return this;let c=a.length,u=new Array(c),f=Array.isArray(r),p=typeof i=="function";for(let y=0;y<c;y++)u[y]={descending:f?!!r[y]:!!r,nullsLast:o,customComp:p?i:i?.[s[y]]};let m=new Array(l);for(let y=0;y<l;y++)m[y]=y;return m.sort((y,d)=>{for(let h=0;h<c;h++){let g=br(a[h][y],a[h][d],u[h]);if(g!==0)return g}return 0}),e.S(Yr(this.t,m),this.a,l)}tail(t=10){return this.limit(t,{offset:0,from:"end"})}toArray(t){return bt(Object.values(this.select(t).t)?.[0]??[])}toDict(){return{...this.t}}toDicts(){return Qs(this.t,this.r)}transpose({includeHeader:t=!1,headerName:n="column",columnNames:r}={}){if(this.r===0){let c=t?{[n]:Kt([],D.Utf8,0)}:{},u=t?{[n]:D.Utf8}:{};return e.S(c,u,0)}let o=this.columns,i;if(typeof r=="string"){et(r,this.t,"columnNames"),o=o.filter(u=>u!==r);let c=this.t[r];i=new Array(this.r);for(let u=0;u<this.r;u++){let f=c[u];if(f==null)throw new Y(`Transpose columnNames column "${r}" contains null/undefined at index ${u}`);i[u]=String(f)}}else if(r!=null){let c=Array.from(r);if(c.length!==this.r)throw new Y(`columnNames length (${c.length}) must match the height of the DataFrame (${this.r})`);i=c.map(String)}else{i=new Array(this.r);for(let c=0;c<this.r;c++)i[c]=`column_${c}`}let s=o.length,a={},l={};t&&(a[n]=Kt(o,D.Utf8,s),l[n]=D.Utf8);for(let c=0;c<this.r;c++){let u=i[c];if(a[u]!==void 0)throw new Y(`Duplicate column name in transposed DataFrame: "${u}"`);let f=new Array(s);for(let m=0;m<s;m++)f[m]=this.t[o[m]][c];let p=rn(f);a[u]=Kt(f,p,s),l[u]=p}return e.S(a,l,s)}unique(t){let n=t!==void 0?bt(t):Object.keys(this.t);return this.groupBy(n).agg(fe(n).first())}unpivot(t){let{idVars:n,valueVars:r,varName:o="variable",valueName:i="value"}=t,s=Nt(n,"string"),a=Nt(r,"string"),l=s.length,c=a.length;for(let y of s)et(y,this.t,"Unpivot id variable key");for(let y of a)et(y,this.t,"Unpivot value variable key");let u=this.r*c,f={};for(let y=0;y<l;y++)f[s[y]]=new Array(u);f[o]=new Array(u),f[i]=new Array(u);let p=0;for(let y=0;y<this.r;y++)for(let d=0;d<c;d++){let h=a[d];for(let g=0;g<l;g++){let x=s[g];f[x][p]=this.t[x][y]}f[o][p]=h,f[i][p]=this.t[h][y],p++}let m={};for(let y of s)m[y]=this.a[y];return m[o]=D.Utf8,m[i]=rn(f[i]),e.S(f,m,u)}vstack(t){return this.concat(t,{how:"vertical"})}get width(){return Object.keys(this.t).length}withColumns(...t){if(t.length===0)return this;let n=this.ct(t),r=Object.keys(this.t),o=sn(n,r,void 0,this.a,this.t),i=o.length;if(i===0)return this;let s=new Map;for(let c=0;c<i;c++){let u=o[c],f=u.O||u.f||"*";s.set(f,u)}let a=[],l=r.length;for(let c=0;c<l;c++){let u=r[c];a.push(s.get(u)||new U(u)),s.delete(u)}for(let c of s.values())a.push(c);return this.select(...a)}withRowIndex(t="index",n=0){let r=Vn(n,{mode:"independent",dtype:D.UInt32,step:1}),o=this.insertColumn(0,t,r);return o.a[t]=D.UInt32,o}writeCsv(t,n={}){if(t){if(typeof t=="string"){if(typeof An!="function")throw new Ht("File writing is not supported in this environment (missing require('fs')).");let r=An("fs"),o=r.openSync(t,"w");try{qe(this.t,this.r,{...n,onRow:i=>{r.writeSync(o,i,null,"utf8")}})}finally{r.closeSync(o)}}else if(v(t)&&typeof t.write=="function")qe(this.t,this.r,{...n,onRow:r=>{t.write(r)}});else throw new N("Invalid file argument. Expected a file path string or a writable stream/object with a write method.");return""}return qe(this.t,this.r,n)}writeJson(t,{format:n="json",replacerOptions:r}={}){if(n!=="json"&&n!=="ndjson")throw new N(`Unsupported JSON format: "${n}". Expected "json" or "ndjson".`);let o=r?.replacer===null?void 0:Yt(r),i;if(n==="ndjson"){let s=this.toDicts(),a=s.length,l=new Array(a);for(let c=0;c<a;c++)l[c]=JSON.stringify(s[c],o);i=l.join(`
5
+ `)}else i=JSON.stringify(this.toDicts(),o);return ta(t,i),i}}});pe();pe();$t();mo();vn();it();tt();function po(e,{format:t="json",trimBeforeParse:n=!0,schema:r,...o}={}){let i=te(e,{format:t,trimBeforeParse:n,...o});if(i===e)throw new Y(`Invalid JSON input: must be a valid, non-empty JSON ${t} string.`);let s=Array.isArray(i)?i:v(i)?[i]:[];return new q(s,r)}vn();it();function yo(e,t={}){let{hasHeader:n=!0,schema:r,inferSchema:o=!0}=t,i=Gs(e,t);if(i.length===0)return new q({});let s,a;n?(s=i[0],a=i.slice(1)):(s=i[0].map((p,m)=>`column_${m}`),a=i);let l=s.length,c=a.length,u={};for(let p=0;p<l;p++){let m=s[p],y=new Array(c);for(let d=0;d<c;d++)y[d]=a[d][p]!==void 0?a[d][p]:"";u[m]=y}let f={};for(let p=0;p<l;p++){let m=s[p],y=u[m];if(r&&r[m])f[m]=y;else if(o){let{values:d}=Js(y,t);f[m]=d}else f[m]=y}return new q(f,r)}function pu(e,t){return new q(e,t)}var Kp={all:gn,coalesce:ya,col:e=>new U(e),concat:de,data:pu,duration:lo,element:wa,exclude:fe,implode:ba,lit:an,readCsv:yo,readJson:po,seqRange:Vn,struct:Sa,when:ha,...D};$t();tt();export{Kp as $df,ht as ALL_COLUMNS_MARKER,$s as Array,$s as ArrayDataType,Ye as ArrayExpr,to as ArrayExprNamespace,Mn as ArrayType,js as Binary,Pr as BinaryType,Un as Boolean,Un as BooleanDataType,vr as BooleanType,Do as COALESCE_MARKER,U as ColumnExpr,nn as ColumnNotFoundError,at as ComputeError,en as DFScriptError,du as DURATION_MARKER,q as DataFrame,Y as DataFrameError,Z as DataType,D as DataTypeRegistry,Ps as Date,Ps as DateDataType,co as DateTimeExprNamespace,$r as DateType,Ke as Datetime,Lt as DatetimeType,Qt as DecimalType,Ls as Duration,Et as DurationType,Sn as ELEMENT_MARKER,xt as ExprBase,Fs as Float32,Nn as Float32Type,Le as Float64,kn as Float64Type,yn as FloatDataType,ye as GroupedData,Ht as IOStreamError,_s as Int16,_r as Int16Type,yt as Int32,Nr as Int32Type,Ve as Int64,kr as Int64Type,Rs as Int8,Rr as Int8Type,_n as IntegerDataType,N as InvalidArgumentError,Io as LITERAL_MARKER,dn as NestedDataType,vs as Null,Vr as NullType,Zt as NumericDataType,Bs as Object,Bs as ObjectDataType,Lr as ObjectType,Co as STRUCT_MARKER,hn as SchemaError,ut as ShapeError,Bt as SignedIntegerType,Xe as StandardExpr,He as StringExpr,eo as StringExprNamespace,Ks as Struct,Qe as StructExpr,oo as StructExprNamespace,se as StructType,Vt as TemporalDataType,tr as TemporalExpr,Vs as Time,Kr as TimeType,ks as UInt16,Ur as UInt16Type,Ms as UInt32,Fr as UInt32Type,Us as UInt64,jr as UInt64Type,Ns as UInt8,Mr as UInt8Type,Pt as UnsignedIntegerType,$e as Utf8,Br as Utf8Type,Ro as WHEN_MARKER,er as When,fo as WhenThen,er as WhenThenChain,ra as alignAsofIndices,ea as alignKeyIndices,oa as alignWhereIndices,gn as all,et as assertColumnExists,zr as assertHeight,Je as assertNotNull,Bc as assertValidArgument,sa as buildCanonicalSet,ce as buildGroupMap,ya as coalesce,Kt as coerceColumn,Qs as columnsToRows,la as compareMissing,aa as computeIsIn,Zr as computeRank,jn as computeRowHash,de as concat,Ta as deduceBinaryType,S as derive,lo as duration,wa as element,ia as evalBinaryOp,lu as evalUnaryOp,Bn as evaluateArg,It as evaluateExpression,fe as exclude,ue as gatherColumnByIndices,Yr as gatherColumnsByIndices,Xr as getRowFromColumns,ba as implode,rn as inferColumnType,Pn as isEvaluatedColumn,G as kleeneBinary,k as kleeneUnary,an as lit,We as materializeJoinedDataFrame,yo as readCsv,po as readJson,sn as resolveColumnSelectors,me as resolveExprOutputType,Ln as resolveOperandType,Hs as resolveWindowExpr,Zs as rowsToColumns,Vn as seqRange,Sa as struct,ha as when,ta as writeStringToFileOrStream};