UNPKG

@duckdb/duckdb-wasm

Version:
7 lines 722 kB
"use strict";var A_=Object.create;var kr=Object.defineProperty;var k_=Object.getOwnPropertyDescriptor;var D_=Object.getOwnPropertyNames;var T_=Object.getPrototypeOf,C_=Object.prototype.hasOwnProperty;var x=(f,e)=>()=>(e||f((e={exports:{}}).exports,e),e.exports),P_=(f,e)=>{for(var r in e)kr(f,r,{get:e[r],enumerable:!0})},Fn=(f,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of D_(e))!C_.call(f,n)&&n!==r&&kr(f,n,{get:()=>e[n],enumerable:!(t=k_(e,n))||t.enumerable});return f};var Ve=(f,e,r)=>(r=f!=null?A_(T_(f)):{},Fn(e||!f||!f.__esModule?kr(r,"default",{value:f,enumerable:!0}):r,f)),x_=f=>Fn(kr({},"__esModule",{value:!0}),f);var Xe=x((np,In)=>{"use strict";In.exports={BINARY_TYPES:["nodebuffer","arraybuffer","fragments"],GUID:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",kStatusCode:Symbol("status-code"),kWebSocket:Symbol("websocket"),EMPTY_BUFFER:Buffer.alloc(0),NOOP:()=>{}}});var lr=x((ap,Et)=>{"use strict";var{EMPTY_BUFFER:G_}=Xe();function Hn(f,e){if(f.length===0)return G_;if(f.length===1)return f[0];let r=Buffer.allocUnsafe(e),t=0;for(let n=0;n<f.length;n++){let a=f[n];r.set(a,t),t+=a.length}return t<e?r.slice(0,t):r}function Bn(f,e,r,t,n){for(let a=0;a<n;a++)r[t+a]=f[a]^e[a&3]}function On(f,e){let r=f.length;for(let t=0;t<r;t++)f[t]^=e[t&3]}function Un(f){return f.byteLength===f.buffer.byteLength?f.buffer:f.buffer.slice(f.byteOffset,f.byteOffset+f.byteLength)}function Rr(f){if(Rr.readOnly=!0,Buffer.isBuffer(f))return f;let e;return f instanceof ArrayBuffer?e=Buffer.from(f):ArrayBuffer.isView(f)?e=Buffer.from(f.buffer,f.byteOffset,f.byteLength):(e=Buffer.from(f),Rr.readOnly=!1),e}try{let f=require("bufferutil"),e=f.BufferUtil||f;Et.exports={concat:Hn,mask(r,t,n,a,o){o<48?Bn(r,t,n,a,o):e.mask(r,t,n,a,o)},toArrayBuffer:Un,toBuffer:Rr,unmask(r,t){r.length<32?On(r,t):e.unmask(r,t)}}}catch{Et.exports={concat:Hn,mask:Bn,toArrayBuffer:Un,toBuffer:Rr,unmask:On}}});var Vn=x((sp,Wn)=>{"use strict";var Nn=Symbol("kDone"),yt=Symbol("kRun"),wt=class{constructor(e){this[Nn]=()=>{this.pending--,this[yt]()},this.concurrency=e||1/0,this.jobs=[],this.pending=0}add(e){this.jobs.push(e),this[yt]()}[yt](){if(this.pending!==this.concurrency&&this.jobs.length){let e=this.jobs.shift();this.pending++,e(this[Nn])}}};Wn.exports=wt});var dr=x((op,zn)=>{"use strict";var ur=require("zlib"),qn=lr(),j_=Vn(),{kStatusCode:$n,NOOP:I_}=Xe(),H_=Buffer.from([0,0,255,255]),Ir=Symbol("permessage-deflate"),Ce=Symbol("total-length"),fr=Symbol("callback"),Ge=Symbol("buffers"),jr=Symbol("error"),Gr,Lt=class{constructor(e,r,t){if(this._maxPayload=t|0,this._options=e||{},this._threshold=this._options.threshold!==void 0?this._options.threshold:1024,this._isServer=!!r,this._deflate=null,this._inflate=null,this.params=null,!Gr){let n=this._options.concurrencyLimit!==void 0?this._options.concurrencyLimit:10;Gr=new j_(n)}}static get extensionName(){return"permessage-deflate"}offer(){let e={};return this._options.serverNoContextTakeover&&(e.server_no_context_takeover=!0),this._options.clientNoContextTakeover&&(e.client_no_context_takeover=!0),this._options.serverMaxWindowBits&&(e.server_max_window_bits=this._options.serverMaxWindowBits),this._options.clientMaxWindowBits?e.client_max_window_bits=this._options.clientMaxWindowBits:this._options.clientMaxWindowBits==null&&(e.client_max_window_bits=!0),e}accept(e){return e=this.normalizeParams(e),this.params=this._isServer?this.acceptAsServer(e):this.acceptAsClient(e),this.params}cleanup(){if(this._inflate&&(this._inflate.close(),this._inflate=null),this._deflate){let e=this._deflate[fr];this._deflate.close(),this._deflate=null,e&&e(new Error("The deflate stream was closed while data was being processed"))}}acceptAsServer(e){let r=this._options,t=e.find(n=>!(r.serverNoContextTakeover===!1&&n.server_no_context_takeover||n.server_max_window_bits&&(r.serverMaxWindowBits===!1||typeof r.serverMaxWindowBits=="number"&&r.serverMaxWindowBits>n.server_max_window_bits)||typeof r.clientMaxWindowBits=="number"&&!n.client_max_window_bits));if(!t)throw new Error("None of the extension offers can be accepted");return r.serverNoContextTakeover&&(t.server_no_context_takeover=!0),r.clientNoContextTakeover&&(t.client_no_context_takeover=!0),typeof r.serverMaxWindowBits=="number"&&(t.server_max_window_bits=r.serverMaxWindowBits),typeof r.clientMaxWindowBits=="number"?t.client_max_window_bits=r.clientMaxWindowBits:(t.client_max_window_bits===!0||r.clientMaxWindowBits===!1)&&delete t.client_max_window_bits,t}acceptAsClient(e){let r=e[0];if(this._options.clientNoContextTakeover===!1&&r.client_no_context_takeover)throw new Error('Unexpected parameter "client_no_context_takeover"');if(!r.client_max_window_bits)typeof this._options.clientMaxWindowBits=="number"&&(r.client_max_window_bits=this._options.clientMaxWindowBits);else if(this._options.clientMaxWindowBits===!1||typeof this._options.clientMaxWindowBits=="number"&&r.client_max_window_bits>this._options.clientMaxWindowBits)throw new Error('Unexpected or invalid parameter "client_max_window_bits"');return r}normalizeParams(e){return e.forEach(r=>{Object.keys(r).forEach(t=>{let n=r[t];if(n.length>1)throw new Error(`Parameter "${t}" must have only a single value`);if(n=n[0],t==="client_max_window_bits"){if(n!==!0){let a=+n;if(!Number.isInteger(a)||a<8||a>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=a}else if(!this._isServer)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}else if(t==="server_max_window_bits"){let a=+n;if(!Number.isInteger(a)||a<8||a>15)throw new TypeError(`Invalid value for parameter "${t}": ${n}`);n=a}else if(t==="client_no_context_takeover"||t==="server_no_context_takeover"){if(n!==!0)throw new TypeError(`Invalid value for parameter "${t}": ${n}`)}else throw new Error(`Unknown parameter "${t}"`);r[t]=n})}),e}decompress(e,r,t){Gr.add(n=>{this._decompress(e,r,(a,o)=>{n(),t(a,o)})})}compress(e,r,t){Gr.add(n=>{this._compress(e,r,(a,o)=>{n(),t(a,o)})})}_decompress(e,r,t){let n=this._isServer?"client":"server";if(!this._inflate){let a=`${n}_max_window_bits`,o=typeof this.params[a]!="number"?ur.Z_DEFAULT_WINDOWBITS:this.params[a];this._inflate=ur.createInflateRaw({...this._options.zlibInflateOptions,windowBits:o}),this._inflate[Ir]=this,this._inflate[Ce]=0,this._inflate[Ge]=[],this._inflate.on("error",O_),this._inflate.on("data",Xn)}this._inflate[fr]=t,this._inflate.write(e),r&&this._inflate.write(H_),this._inflate.flush(()=>{let a=this._inflate[jr];if(a){this._inflate.close(),this._inflate=null,t(a);return}let o=qn.concat(this._inflate[Ge],this._inflate[Ce]);this._inflate._readableState.endEmitted?(this._inflate.close(),this._inflate=null):(this._inflate[Ce]=0,this._inflate[Ge]=[],r&&this.params[`${n}_no_context_takeover`]&&this._inflate.reset()),t(null,o)})}_compress(e,r,t){let n=this._isServer?"server":"client";if(!this._deflate){let a=`${n}_max_window_bits`,o=typeof this.params[a]!="number"?ur.Z_DEFAULT_WINDOWBITS:this.params[a];this._deflate=ur.createDeflateRaw({...this._options.zlibDeflateOptions,windowBits:o}),this._deflate[Ce]=0,this._deflate[Ge]=[],this._deflate.on("error",I_),this._deflate.on("data",B_)}this._deflate[fr]=t,this._deflate.write(e),this._deflate.flush(ur.Z_SYNC_FLUSH,()=>{if(!this._deflate)return;let a=qn.concat(this._deflate[Ge],this._deflate[Ce]);r&&(a=a.slice(0,a.length-4)),this._deflate[fr]=null,this._deflate[Ce]=0,this._deflate[Ge]=[],r&&this.params[`${n}_no_context_takeover`]&&this._deflate.reset(),t(null,a)})}};zn.exports=Lt;function B_(f){this[Ge].push(f),this[Ce]+=f.length}function Xn(f){if(this[Ce]+=f.length,this[Ir]._maxPayload<1||this[Ce]<=this[Ir]._maxPayload){this[Ge].push(f);return}this[jr]=new RangeError("Max payload size exceeded"),this[jr].code="WS_ERR_UNSUPPORTED_MESSAGE_LENGTH",this[jr][$n]=1009,this.removeListener("data",Xn),this.reset()}function O_(f){this[Ir]._inflate=null,f[$n]=1007,this[fr](f)}});var kt=x((_p,At)=>{"use strict";function Qn(f){return f>=1e3&&f<=1014&&f!==1004&&f!==1005&&f!==1006||f>=3e3&&f<=4999}function Kn(f){let e=f.length,r=0;for(;r<e;)if(!(f[r]&128))r++;else if((f[r]&224)===192){if(r+1===e||(f[r+1]&192)!==128||(f[r]&254)===192)return!1;r+=2}else if((f[r]&240)===224){if(r+2>=e||(f[r+1]&192)!==128||(f[r+2]&192)!==128||f[r]===224&&(f[r+1]&224)===128||f[r]===237&&(f[r+1]&224)===160)return!1;r+=3}else if((f[r]&248)===240){if(r+3>=e||(f[r+1]&192)!==128||(f[r+2]&192)!==128||(f[r+3]&192)!==128||f[r]===240&&(f[r+1]&240)===128||f[r]===244&&f[r+1]>143||f[r]>244)return!1;r+=4}else return!1;return!0}try{let f=require("utf-8-validate");typeof f=="object"&&(f=f.Validation.isValidUTF8),At.exports={isValidStatusCode:Qn,isValidUTF8(e){return e.length<150?Kn(e):f(e)}}}catch{At.exports={isValidStatusCode:Qn,isValidUTF8:Kn}}});var Pt=x((cp,ta)=>{"use strict";var{Writable:U_}=require("stream"),Yn=dr(),{BINARY_TYPES:N_,EMPTY_BUFFER:W_,kStatusCode:V_,kWebSocket:q_}=Xe(),{concat:Dt,toArrayBuffer:$_,unmask:X_}=lr(),{isValidStatusCode:z_,isValidUTF8:Jn}=kt(),pr=0,Zn=1,ea=2,ra=3,Tt=4,Q_=5,Ct=class extends U_{constructor(e,r,t,n){super(),this._binaryType=e||N_[0],this[q_]=void 0,this._extensions=r||{},this._isServer=!!t,this._maxPayload=n|0,this._bufferedBytes=0,this._buffers=[],this._compressed=!1,this._payloadLength=0,this._mask=void 0,this._fragmented=0,this._masked=!1,this._fin=!1,this._opcode=0,this._totalPayloadLength=0,this._messageLength=0,this._fragments=[],this._state=pr,this._loop=!1}_write(e,r,t){if(this._opcode===8&&this._state==pr)return t();this._bufferedBytes+=e.length,this._buffers.push(e),this.startLoop(t)}consume(e){if(this._bufferedBytes-=e,e===this._buffers[0].length)return this._buffers.shift();if(e<this._buffers[0].length){let t=this._buffers[0];return this._buffers[0]=t.slice(e),t.slice(0,e)}let r=Buffer.allocUnsafe(e);do{let t=this._buffers[0],n=r.length-e;e>=t.length?r.set(this._buffers.shift(),n):(r.set(new Uint8Array(t.buffer,t.byteOffset,e),n),this._buffers[0]=t.slice(e)),e-=t.length}while(e>0);return r}startLoop(e){let r;this._loop=!0;do switch(this._state){case pr:r=this.getInfo();break;case Zn:r=this.getPayloadLength16();break;case ea:r=this.getPayloadLength64();break;case ra:this.getMask();break;case Tt:r=this.getData(e);break;default:this._loop=!1;return}while(this._loop);e(r)}getInfo(){if(this._bufferedBytes<2){this._loop=!1;return}let e=this.consume(2);if(e[0]&48)return this._loop=!1,se(RangeError,"RSV2 and RSV3 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_2_3");let r=(e[0]&64)===64;if(r&&!this._extensions[Yn.extensionName])return this._loop=!1,se(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._fin=(e[0]&128)===128,this._opcode=e[0]&15,this._payloadLength=e[1]&127,this._opcode===0){if(r)return this._loop=!1,se(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(!this._fragmented)return this._loop=!1,se(RangeError,"invalid opcode 0",!0,1002,"WS_ERR_INVALID_OPCODE");this._opcode=this._fragmented}else if(this._opcode===1||this._opcode===2){if(this._fragmented)return this._loop=!1,se(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");this._compressed=r}else if(this._opcode>7&&this._opcode<11){if(!this._fin)return this._loop=!1,se(RangeError,"FIN must be set",!0,1002,"WS_ERR_EXPECTED_FIN");if(r)return this._loop=!1,se(RangeError,"RSV1 must be clear",!0,1002,"WS_ERR_UNEXPECTED_RSV_1");if(this._payloadLength>125)return this._loop=!1,se(RangeError,`invalid payload length ${this._payloadLength}`,!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH")}else return this._loop=!1,se(RangeError,`invalid opcode ${this._opcode}`,!0,1002,"WS_ERR_INVALID_OPCODE");if(!this._fin&&!this._fragmented&&(this._fragmented=this._opcode),this._masked=(e[1]&128)===128,this._isServer){if(!this._masked)return this._loop=!1,se(RangeError,"MASK must be set",!0,1002,"WS_ERR_EXPECTED_MASK")}else if(this._masked)return this._loop=!1,se(RangeError,"MASK must be clear",!0,1002,"WS_ERR_UNEXPECTED_MASK");if(this._payloadLength===126)this._state=Zn;else if(this._payloadLength===127)this._state=ea;else return this.haveLength()}getPayloadLength16(){if(this._bufferedBytes<2){this._loop=!1;return}return this._payloadLength=this.consume(2).readUInt16BE(0),this.haveLength()}getPayloadLength64(){if(this._bufferedBytes<8){this._loop=!1;return}let e=this.consume(8),r=e.readUInt32BE(0);return r>Math.pow(2,21)-1?(this._loop=!1,se(RangeError,"Unsupported WebSocket frame: payload length > 2^53 - 1",!1,1009,"WS_ERR_UNSUPPORTED_DATA_PAYLOAD_LENGTH")):(this._payloadLength=r*Math.pow(2,32)+e.readUInt32BE(4),this.haveLength())}haveLength(){if(this._payloadLength&&this._opcode<8&&(this._totalPayloadLength+=this._payloadLength,this._totalPayloadLength>this._maxPayload&&this._maxPayload>0))return this._loop=!1,se(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH");this._masked?this._state=ra:this._state=Tt}getMask(){if(this._bufferedBytes<4){this._loop=!1;return}this._mask=this.consume(4),this._state=Tt}getData(e){let r=W_;if(this._payloadLength){if(this._bufferedBytes<this._payloadLength){this._loop=!1;return}r=this.consume(this._payloadLength),this._masked&&X_(r,this._mask)}if(this._opcode>7)return this.controlMessage(r);if(this._compressed){this._state=Q_,this.decompress(r,e);return}return r.length&&(this._messageLength=this._totalPayloadLength,this._fragments.push(r)),this.dataMessage()}decompress(e,r){this._extensions[Yn.extensionName].decompress(e,this._fin,(n,a)=>{if(n)return r(n);if(a.length){if(this._messageLength+=a.length,this._messageLength>this._maxPayload&&this._maxPayload>0)return r(se(RangeError,"Max payload size exceeded",!1,1009,"WS_ERR_UNSUPPORTED_MESSAGE_LENGTH"));this._fragments.push(a)}let o=this.dataMessage();if(o)return r(o);this.startLoop(r)})}dataMessage(){if(this._fin){let e=this._messageLength,r=this._fragments;if(this._totalPayloadLength=0,this._messageLength=0,this._fragmented=0,this._fragments=[],this._opcode===2){let t;this._binaryType==="nodebuffer"?t=Dt(r,e):this._binaryType==="arraybuffer"?t=$_(Dt(r,e)):t=r,this.emit("message",t)}else{let t=Dt(r,e);if(!Jn(t))return this._loop=!1,se(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("message",t.toString())}}this._state=pr}controlMessage(e){if(this._opcode===8)if(this._loop=!1,e.length===0)this.emit("conclude",1005,""),this.end();else{if(e.length===1)return se(RangeError,"invalid payload length 1",!0,1002,"WS_ERR_INVALID_CONTROL_PAYLOAD_LENGTH");{let r=e.readUInt16BE(0);if(!z_(r))return se(RangeError,`invalid status code ${r}`,!0,1002,"WS_ERR_INVALID_CLOSE_CODE");let t=e.slice(2);if(!Jn(t))return se(Error,"invalid UTF-8 sequence",!0,1007,"WS_ERR_INVALID_UTF8");this.emit("conclude",r,t.toString()),this.end()}}else this._opcode===9?this.emit("ping",e):this.emit("pong",e);this._state=pr}};ta.exports=Ct;function se(f,e,r,t,n){let a=new f(r?`Invalid WebSocket frame: ${e}`:e);return Error.captureStackTrace(a,se),a.code=n,a[V_]=t,a}});var Ft=x((fp,aa)=>{"use strict";var lp=require("net"),up=require("tls"),{randomFillSync:K_}=require("crypto"),ia=dr(),{EMPTY_BUFFER:Y_}=Xe(),{isValidStatusCode:J_}=kt(),{mask:na,toBuffer:Pe}=lr(),ze=Buffer.alloc(4),xt=class f{constructor(e,r){this._extensions=r||{},this._socket=e,this._firstFragment=!0,this._compress=!1,this._bufferedBytes=0,this._deflating=!1,this._queue=[]}static frame(e,r){let t=r.mask&&r.readOnly,n=r.mask?6:2,a=e.length;e.length>=65536?(n+=8,a=127):e.length>125&&(n+=2,a=126);let o=Buffer.allocUnsafe(t?e.length+n:n);return o[0]=r.fin?r.opcode|128:r.opcode,r.rsv1&&(o[0]|=64),o[1]=a,a===126?o.writeUInt16BE(e.length,2):a===127&&(o.writeUInt32BE(0,2),o.writeUInt32BE(e.length,6)),r.mask?(K_(ze,0,4),o[1]|=128,o[n-4]=ze[0],o[n-3]=ze[1],o[n-2]=ze[2],o[n-1]=ze[3],t?(na(e,ze,o,n,e.length),[o]):(na(e,ze,e,0,e.length),[o,e])):[o,e]}close(e,r,t,n){let a;if(e===void 0)a=Y_;else{if(typeof e!="number"||!J_(e))throw new TypeError("First argument must be a valid error code number");if(r===void 0||r==="")a=Buffer.allocUnsafe(2),a.writeUInt16BE(e,0);else{let o=Buffer.byteLength(r);if(o>123)throw new RangeError("The message must not be greater than 123 bytes");a=Buffer.allocUnsafe(2+o),a.writeUInt16BE(e,0),a.write(r,2)}}this._deflating?this.enqueue([this.doClose,a,t,n]):this.doClose(a,t,n)}doClose(e,r,t){this.sendFrame(f.frame(e,{fin:!0,rsv1:!1,opcode:8,mask:r,readOnly:!1}),t)}ping(e,r,t){let n=Pe(e);if(n.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPing,n,r,Pe.readOnly,t]):this.doPing(n,r,Pe.readOnly,t)}doPing(e,r,t,n){this.sendFrame(f.frame(e,{fin:!0,rsv1:!1,opcode:9,mask:r,readOnly:t}),n)}pong(e,r,t){let n=Pe(e);if(n.length>125)throw new RangeError("The data size must not be greater than 125 bytes");this._deflating?this.enqueue([this.doPong,n,r,Pe.readOnly,t]):this.doPong(n,r,Pe.readOnly,t)}doPong(e,r,t,n){this.sendFrame(f.frame(e,{fin:!0,rsv1:!1,opcode:10,mask:r,readOnly:t}),n)}send(e,r,t){let n=Pe(e),a=this._extensions[ia.extensionName],o=r.binary?2:1,_=r.compress;if(this._firstFragment?(this._firstFragment=!1,_&&a&&(_=n.length>=a._threshold),this._compress=_):(_=!1,o=0),r.fin&&(this._firstFragment=!0),a){let c={fin:r.fin,rsv1:_,opcode:o,mask:r.mask,readOnly:Pe.readOnly};this._deflating?this.enqueue([this.dispatch,n,this._compress,c,t]):this.dispatch(n,this._compress,c,t)}else this.sendFrame(f.frame(n,{fin:r.fin,rsv1:!1,opcode:o,mask:r.mask,readOnly:Pe.readOnly}),t)}dispatch(e,r,t,n){if(!r){this.sendFrame(f.frame(e,t),n);return}let a=this._extensions[ia.extensionName];this._bufferedBytes+=e.length,this._deflating=!0,a.compress(e,t.fin,(o,_)=>{if(this._socket.destroyed){let c=new Error("The socket was closed while data was being compressed");typeof n=="function"&&n(c);for(let l=0;l<this._queue.length;l++){let u=this._queue[l][4];typeof u=="function"&&u(c)}return}this._bufferedBytes-=e.length,this._deflating=!1,t.readOnly=!1,this.sendFrame(f.frame(_,t),n),this.dequeue()})}dequeue(){for(;!this._deflating&&this._queue.length;){let e=this._queue.shift();this._bufferedBytes-=e[1].length,Reflect.apply(e[0],this,e.slice(1))}}enqueue(e){this._bufferedBytes+=e[1].length,this._queue.push(e)}sendFrame(e,r){e.length===2?(this._socket.cork(),this._socket.write(e[0]),this._socket.write(e[1],r),this._socket.uncork()):this._socket.write(e[0],r)}};aa.exports=xt});var oa=x((dp,sa)=>{"use strict";var tr=class{constructor(e,r){this.target=r,this.type=e}},Mt=class extends tr{constructor(e,r){super("message",r),this.data=e}},Rt=class extends tr{constructor(e,r,t){super("close",t),this.wasClean=t._closeFrameReceived&&t._closeFrameSent,this.reason=r,this.code=e}},Gt=class extends tr{constructor(e){super("open",e)}},jt=class extends tr{constructor(e,r){super("error",r),this.message=e.message,this.error=e}},Z_={addEventListener(f,e,r){if(typeof e!="function")return;function t(c){e.call(this,new Mt(c,this))}function n(c,l){e.call(this,new Rt(c,l,this))}function a(c){e.call(this,new jt(c,this))}function o(){e.call(this,new Gt(this))}let _=r&&r.once?"once":"on";f==="message"?(t._listener=e,this[_](f,t)):f==="close"?(n._listener=e,this[_](f,n)):f==="error"?(a._listener=e,this[_](f,a)):f==="open"?(o._listener=e,this[_](f,o)):this[_](f,e)},removeEventListener(f,e){let r=this.listeners(f);for(let t=0;t<r.length;t++)(r[t]===e||r[t]._listener===e)&&this.removeListener(f,r[t])}};sa.exports=Z_});var It=x((pp,_a)=>{"use strict";var mr=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0];function Le(f,e,r){f[e]===void 0?f[e]=[r]:f[e].push(r)}function ec(f){let e=Object.create(null);if(f===void 0||f==="")return e;let r=Object.create(null),t=!1,n=!1,a=!1,o,_,c=-1,l=-1,u=0;for(;u<f.length;u++){let p=f.charCodeAt(u);if(o===void 0)if(l===-1&&mr[p]===1)c===-1&&(c=u);else if(p===32||p===9)l===-1&&c!==-1&&(l=u);else if(p===59||p===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${u}`);l===-1&&(l=u);let m=f.slice(c,l);p===44?(Le(e,m,r),r=Object.create(null)):o=m,c=l=-1}else throw new SyntaxError(`Unexpected character at index ${u}`);else if(_===void 0)if(l===-1&&mr[p]===1)c===-1&&(c=u);else if(p===32||p===9)l===-1&&c!==-1&&(l=u);else if(p===59||p===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${u}`);l===-1&&(l=u),Le(r,f.slice(c,l),!0),p===44&&(Le(e,o,r),r=Object.create(null),o=void 0),c=l=-1}else if(p===61&&c!==-1&&l===-1)_=f.slice(c,u),c=l=-1;else throw new SyntaxError(`Unexpected character at index ${u}`);else if(n){if(mr[p]!==1)throw new SyntaxError(`Unexpected character at index ${u}`);c===-1?c=u:t||(t=!0),n=!1}else if(a)if(mr[p]===1)c===-1&&(c=u);else if(p===34&&c!==-1)a=!1,l=u;else if(p===92)n=!0;else throw new SyntaxError(`Unexpected character at index ${u}`);else if(p===34&&f.charCodeAt(u-1)===61)a=!0;else if(l===-1&&mr[p]===1)c===-1&&(c=u);else if(c!==-1&&(p===32||p===9))l===-1&&(l=u);else if(p===59||p===44){if(c===-1)throw new SyntaxError(`Unexpected character at index ${u}`);l===-1&&(l=u);let m=f.slice(c,l);t&&(m=m.replace(/\\/g,""),t=!1),Le(r,_,m),p===44&&(Le(e,o,r),r=Object.create(null),o=void 0),_=void 0,c=l=-1}else throw new SyntaxError(`Unexpected character at index ${u}`)}if(c===-1||a)throw new SyntaxError("Unexpected end of input");l===-1&&(l=u);let d=f.slice(c,l);return o===void 0?Le(e,d,r):(_===void 0?Le(r,d,!0):t?Le(r,_,d.replace(/\\/g,"")):Le(r,_,d),Le(e,o,r)),e}function rc(f){return Object.keys(f).map(e=>{let r=f[e];return Array.isArray(r)||(r=[r]),r.map(t=>[e].concat(Object.keys(t).map(n=>{let a=t[n];return Array.isArray(a)||(a=[a]),a.map(o=>o===!0?n:`${n}=${o}`).join("; ")})).join("; ")).join(", ")}).join(", ")}_a.exports={format:rc,parse:ec}});var Nt=x((gp,ha)=>{"use strict";var tc=require("events"),ic=require("https"),nc=require("http"),ua=require("net"),ac=require("tls"),{randomBytes:sc,createHash:oc}=require("crypto"),{Readable:mp}=require("stream"),{URL:Ht}=require("url"),je=dr(),_c=Pt(),cc=Ft(),{BINARY_TYPES:ca,EMPTY_BUFFER:Bt,GUID:lc,kStatusCode:uc,kWebSocket:_e,NOOP:fa}=Xe(),{addEventListener:fc,removeEventListener:dc}=oa(),{format:pc,parse:mc}=It(),{toBuffer:gc}=lr(),xe=["CONNECTING","OPEN","CLOSING","CLOSED"],Ot=[8,13],vc=30*1e3,ee=class f extends tc{constructor(e,r,t){super(),this._binaryType=ca[0],this._closeCode=1006,this._closeFrameReceived=!1,this._closeFrameSent=!1,this._closeMessage="",this._closeTimer=null,this._extensions={},this._protocol="",this._readyState=f.CONNECTING,this._receiver=null,this._sender=null,this._socket=null,e!==null?(this._bufferedAmount=0,this._isServer=!1,this._redirects=0,Array.isArray(r)?r=r.join(", "):typeof r=="object"&&r!==null&&(t=r,r=void 0),da(this,e,r,t)):this._isServer=!0}get binaryType(){return this._binaryType}set binaryType(e){ca.includes(e)&&(this._binaryType=e,this._receiver&&(this._receiver._binaryType=e))}get bufferedAmount(){return this._socket?this._socket._writableState.length+this._sender._bufferedBytes:this._bufferedAmount}get extensions(){return Object.keys(this._extensions).join()}get onclose(){}set onclose(e){}get onerror(){}set onerror(e){}get onopen(){}set onopen(e){}get onmessage(){}set onmessage(e){}get protocol(){return this._protocol}get readyState(){return this._readyState}get url(){return this._url}setSocket(e,r,t){let n=new _c(this.binaryType,this._extensions,this._isServer,t);this._sender=new cc(e,this._extensions),this._receiver=n,this._socket=e,n[_e]=this,e[_e]=this,n.on("conclude",bc),n.on("drain",Ec),n.on("error",yc),n.on("message",wc),n.on("ping",Lc),n.on("pong",Ac),e.setTimeout(0),e.setNoDelay(),r.length>0&&e.unshift(r),e.on("close",ma),e.on("data",Hr),e.on("end",ga),e.on("error",va),this._readyState=f.OPEN,this.emit("open")}emitClose(){if(!this._socket){this._readyState=f.CLOSED,this.emit("close",this._closeCode,this._closeMessage);return}this._extensions[je.extensionName]&&this._extensions[je.extensionName].cleanup(),this._receiver.removeAllListeners(),this._readyState=f.CLOSED,this.emit("close",this._closeCode,this._closeMessage)}close(e,r){if(this.readyState!==f.CLOSED){if(this.readyState===f.CONNECTING)return ge(this,this._req,"WebSocket was closed before the connection was established");if(this.readyState===f.CLOSING){this._closeFrameSent&&(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end();return}this._readyState=f.CLOSING,this._sender.close(e,r,!this._isServer,t=>{t||(this._closeFrameSent=!0,(this._closeFrameReceived||this._receiver._writableState.errorEmitted)&&this._socket.end())}),this._closeTimer=setTimeout(this._socket.destroy.bind(this._socket),vc)}}ping(e,r,t){if(this.readyState===f.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(t=e,e=r=void 0):typeof r=="function"&&(t=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==f.OPEN){Ut(this,e,t);return}r===void 0&&(r=!this._isServer),this._sender.ping(e||Bt,r,t)}pong(e,r,t){if(this.readyState===f.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof e=="function"?(t=e,e=r=void 0):typeof r=="function"&&(t=r,r=void 0),typeof e=="number"&&(e=e.toString()),this.readyState!==f.OPEN){Ut(this,e,t);return}r===void 0&&(r=!this._isServer),this._sender.pong(e||Bt,r,t)}send(e,r,t){if(this.readyState===f.CONNECTING)throw new Error("WebSocket is not open: readyState 0 (CONNECTING)");if(typeof r=="function"&&(t=r,r={}),typeof e=="number"&&(e=e.toString()),this.readyState!==f.OPEN){Ut(this,e,t);return}let n={binary:typeof e!="string",mask:!this._isServer,compress:!0,fin:!0,...r};this._extensions[je.extensionName]||(n.compress=!1),this._sender.send(e||Bt,n,t)}terminate(){if(this.readyState!==f.CLOSED){if(this.readyState===f.CONNECTING)return ge(this,this._req,"WebSocket was closed before the connection was established");this._socket&&(this._readyState=f.CLOSING,this._socket.destroy())}}};Object.defineProperty(ee,"CONNECTING",{enumerable:!0,value:xe.indexOf("CONNECTING")});Object.defineProperty(ee.prototype,"CONNECTING",{enumerable:!0,value:xe.indexOf("CONNECTING")});Object.defineProperty(ee,"OPEN",{enumerable:!0,value:xe.indexOf("OPEN")});Object.defineProperty(ee.prototype,"OPEN",{enumerable:!0,value:xe.indexOf("OPEN")});Object.defineProperty(ee,"CLOSING",{enumerable:!0,value:xe.indexOf("CLOSING")});Object.defineProperty(ee.prototype,"CLOSING",{enumerable:!0,value:xe.indexOf("CLOSING")});Object.defineProperty(ee,"CLOSED",{enumerable:!0,value:xe.indexOf("CLOSED")});Object.defineProperty(ee.prototype,"CLOSED",{enumerable:!0,value:xe.indexOf("CLOSED")});["binaryType","bufferedAmount","extensions","protocol","readyState","url"].forEach(f=>{Object.defineProperty(ee.prototype,f,{enumerable:!0})});["open","error","close","message"].forEach(f=>{Object.defineProperty(ee.prototype,`on${f}`,{enumerable:!0,get(){let e=this.listeners(f);for(let r=0;r<e.length;r++)if(e[r]._listener)return e[r]._listener},set(e){let r=this.listeners(f);for(let t=0;t<r.length;t++)r[t]._listener&&this.removeListener(f,r[t]);this.addEventListener(f,e)}})});ee.prototype.addEventListener=fc;ee.prototype.removeEventListener=dc;ha.exports=ee;function da(f,e,r,t){let n={protocolVersion:Ot[1],maxPayload:104857600,perMessageDeflate:!0,followRedirects:!1,maxRedirects:10,...t,createConnection:void 0,socketPath:void 0,hostname:void 0,protocol:void 0,timeout:void 0,method:void 0,host:void 0,path:void 0,port:void 0};if(!Ot.includes(n.protocolVersion))throw new RangeError(`Unsupported protocol version: ${n.protocolVersion} (supported versions: ${Ot.join(", ")})`);let a;e instanceof Ht?(a=e,f._url=e.href):(a=new Ht(e),f._url=e);let o=a.protocol==="ws+unix:";if(!a.host&&(!o||!a.pathname))throw new Error(`Invalid URL: ${f.url}`);let _=a.protocol==="wss:"||a.protocol==="https:",c=_?443:80,l=sc(16).toString("base64"),u=_?ic.get:nc.get,d;if(n.createConnection=_?Sc:hc,n.defaultPort=n.defaultPort||c,n.port=a.port||c,n.host=a.hostname.startsWith("[")?a.hostname.slice(1,-1):a.hostname,n.headers={"Sec-WebSocket-Version":n.protocolVersion,"Sec-WebSocket-Key":l,Connection:"Upgrade",Upgrade:"websocket",...n.headers},n.path=a.pathname+a.search,n.timeout=n.handshakeTimeout,n.perMessageDeflate&&(d=new je(n.perMessageDeflate!==!0?n.perMessageDeflate:{},!1,n.maxPayload),n.headers["Sec-WebSocket-Extensions"]=pc({[je.extensionName]:d.offer()})),r&&(n.headers["Sec-WebSocket-Protocol"]=r),n.origin&&(n.protocolVersion<13?n.headers["Sec-WebSocket-Origin"]=n.origin:n.headers.Origin=n.origin),(a.username||a.password)&&(n.auth=`${a.username}:${a.password}`),o){let m=n.path.split(":");n.socketPath=m[0],n.path=m[1]}let p=f._req=u(n);n.timeout&&p.on("timeout",()=>{ge(f,p,"Opening handshake has timed out")}),p.on("error",m=>{p===null||p.aborted||(p=f._req=null,f._readyState=ee.CLOSING,f.emit("error",m),f.emitClose())}),p.on("response",m=>{let g=m.headers.location,v=m.statusCode;if(g&&n.followRedirects&&v>=300&&v<400){if(++f._redirects>n.maxRedirects){ge(f,p,"Maximum redirects exceeded");return}p.abort();let h=new Ht(g,e);da(f,h,r,t)}else f.emit("unexpected-response",p,m)||ge(f,p,`Unexpected server response: ${m.statusCode}`)}),p.on("upgrade",(m,g,v)=>{if(f.emit("upgrade",m),f.readyState!==ee.CONNECTING)return;p=f._req=null;let h=oc("sha1").update(l+lc).digest("base64");if(m.headers["sec-websocket-accept"]!==h){ge(f,g,"Invalid Sec-WebSocket-Accept header");return}let S=m.headers["sec-websocket-protocol"],b=(r||"").split(/, */),y;if(!r&&S?y="Server sent a subprotocol but none was requested":r&&!S?y="Server sent no subprotocol":S&&!b.includes(S)&&(y="Server sent an invalid subprotocol"),y){ge(f,g,y);return}S&&(f._protocol=S);let D=m.headers["sec-websocket-extensions"];if(D!==void 0){if(!d){ge(f,g,"Server sent a Sec-WebSocket-Extensions header but no extension was requested");return}let L;try{L=mc(D)}catch{ge(f,g,"Invalid Sec-WebSocket-Extensions header");return}let C=Object.keys(L);if(C.length){if(C.length!==1||C[0]!==je.extensionName){ge(f,g,"Server indicated an extension that was not requested");return}try{d.accept(L[je.extensionName])}catch{ge(f,g,"Invalid Sec-WebSocket-Extensions header");return}f._extensions[je.extensionName]=d}}f.setSocket(g,v,n.maxPayload)})}function hc(f){return f.path=f.socketPath,ua.connect(f)}function Sc(f){return f.path=void 0,!f.servername&&f.servername!==""&&(f.servername=ua.isIP(f.host)?"":f.host),ac.connect(f)}function ge(f,e,r){f._readyState=ee.CLOSING;let t=new Error(r);Error.captureStackTrace(t,ge),e.setHeader?(e.abort(),e.socket&&!e.socket.destroyed&&e.socket.destroy(),e.once("abort",f.emitClose.bind(f)),f.emit("error",t)):(e.destroy(t),e.once("error",f.emit.bind(f,"error")),e.once("close",f.emitClose.bind(f)))}function Ut(f,e,r){if(e){let t=gc(e).length;f._socket?f._sender._bufferedBytes+=t:f._bufferedAmount+=t}if(r){let t=new Error(`WebSocket is not open: readyState ${f.readyState} (${xe[f.readyState]})`);r(t)}}function bc(f,e){let r=this[_e];r._closeFrameReceived=!0,r._closeMessage=e,r._closeCode=f,r._socket[_e]!==void 0&&(r._socket.removeListener("data",Hr),process.nextTick(pa,r._socket),f===1005?r.close():r.close(f,e))}function Ec(){this[_e]._socket.resume()}function yc(f){let e=this[_e];e._socket[_e]!==void 0&&(e._socket.removeListener("data",Hr),process.nextTick(pa,e._socket),e.close(f[uc])),e.emit("error",f)}function la(){this[_e].emitClose()}function wc(f){this[_e].emit("message",f)}function Lc(f){let e=this[_e];e.pong(f,!e._isServer,fa),e.emit("ping",f)}function Ac(f){this[_e].emit("pong",f)}function pa(f){f.resume()}function ma(){let f=this[_e];this.removeListener("close",ma),this.removeListener("data",Hr),this.removeListener("end",ga),f._readyState=ee.CLOSING;let e;!this._readableState.endEmitted&&!f._closeFrameReceived&&!f._receiver._writableState.errorEmitted&&(e=f._socket.read())!==null&&f._receiver.write(e),f._receiver.end(),this[_e]=void 0,clearTimeout(f._closeTimer),f._receiver._writableState.finished||f._receiver._writableState.errorEmitted?f.emitClose():(f._receiver.on("error",la),f._receiver.on("finish",la))}function Hr(f){this[_e]._receiver.write(f)||this.pause()}function ga(){let f=this[_e];f._readyState=ee.CLOSING,f._receiver.end(),this.end()}function va(){let f=this[_e];this.removeListener("error",va),this.on("error",fa),f&&(f._readyState=ee.CLOSING,this.destroy())}});var ya=x((vp,Ea)=>{"use strict";var{Duplex:kc}=require("stream");function Sa(f){f.emit("close")}function Dc(){!this.destroyed&&this._writableState.finished&&this.destroy()}function ba(f){this.removeListener("error",ba),this.destroy(),this.listenerCount("error")===0&&this.emit("error",f)}function Tc(f,e){let r=!0,t=!0;function n(){r&&f._socket.resume()}f.readyState===f.CONNECTING?f.once("open",function(){f._receiver.removeAllListeners("drain"),f._receiver.on("drain",n)}):(f._receiver.removeAllListeners("drain"),f._receiver.on("drain",n));let a=new kc({...e,autoDestroy:!1,emitClose:!1,objectMode:!1,writableObjectMode:!1});return f.on("message",function(_){a.push(_)||(r=!1,f._socket.pause())}),f.once("error",function(_){a.destroyed||(t=!1,a.destroy(_))}),f.once("close",function(){a.destroyed||a.push(null)}),a._destroy=function(o,_){if(f.readyState===f.CLOSED){_(o),process.nextTick(Sa,a);return}let c=!1;f.once("error",function(u){c=!0,_(u)}),f.once("close",function(){c||_(o),process.nextTick(Sa,a)}),t&&f.terminate()},a._final=function(o){if(f.readyState===f.CONNECTING){f.once("open",function(){a._final(o)});return}f._socket!==null&&(f._socket._writableState.finished?(o(),a._readableState.endEmitted&&a.destroy()):(f._socket.once("finish",function(){o()}),f.close()))},a._read=function(){f.readyState===f.OPEN&&!r&&(r=!0,f._receiver._writableState.needDrain||f._socket.resume())},a._write=function(o,_,c){if(f.readyState===f.CONNECTING){f.once("open",function(){a._write(o,_,c)});return}f.send(o,c)},a.on("end",Dc),a.on("error",ba),a}Ea.exports=Tc});var Da=x((Ep,ka)=>{"use strict";var Cc=require("events"),Br=require("http"),hp=require("https"),Sp=require("net"),bp=require("tls"),{createHash:Pc}=require("crypto"),Qe=dr(),xc=Nt(),{format:Fc,parse:Mc}=It(),{GUID:Rc,kWebSocket:Gc}=Xe(),jc=/^[+/0-9A-Za-z]{22}==$/,wa=0,La=1,Aa=2,Vt=class extends Cc{constructor(e,r){if(super(),e={maxPayload:100*1024*1024,perMessageDeflate:!1,handleProtocols:null,clientTracking:!0,verifyClient:null,noServer:!1,backlog:null,server:null,host:null,path:null,port:null,...e},e.port==null&&!e.server&&!e.noServer||e.port!=null&&(e.server||e.noServer)||e.server&&e.noServer)throw new TypeError('One and only one of the "port", "server", or "noServer" options must be specified');if(e.port!=null?(this._server=Br.createServer((t,n)=>{let a=Br.STATUS_CODES[426];n.writeHead(426,{"Content-Length":a.length,"Content-Type":"text/plain"}),n.end(a)}),this._server.listen(e.port,e.host,e.backlog,r)):e.server&&(this._server=e.server),this._server){let t=this.emit.bind(this,"connection");this._removeListeners=Ic(this._server,{listening:this.emit.bind(this,"listening"),error:this.emit.bind(this,"error"),upgrade:(n,a,o)=>{this.handleUpgrade(n,a,o,t)}})}e.perMessageDeflate===!0&&(e.perMessageDeflate={}),e.clientTracking&&(this.clients=new Set),this.options=e,this._state=wa}address(){if(this.options.noServer)throw new Error('The server is operating in "noServer" mode');return this._server?this._server.address():null}close(e){if(e&&this.once("close",e),this._state===Aa){process.nextTick(Wt,this);return}if(this._state===La)return;if(this._state=La,this.clients)for(let t of this.clients)t.terminate();let r=this._server;if(r&&(this._removeListeners(),this._removeListeners=this._server=null,this.options.port!=null)){r.close(Wt.bind(void 0,this));return}process.nextTick(Wt,this)}shouldHandle(e){if(this.options.path){let r=e.url.indexOf("?");if((r!==-1?e.url.slice(0,r):e.url)!==this.options.path)return!1}return!0}handleUpgrade(e,r,t,n){r.on("error",qt);let a=e.headers["sec-websocket-key"]!==void 0?e.headers["sec-websocket-key"].trim():!1,o=+e.headers["sec-websocket-version"],_={};if(e.method!=="GET"||e.headers.upgrade.toLowerCase()!=="websocket"||!a||!jc.test(a)||o!==8&&o!==13||!this.shouldHandle(e))return gr(r,400);if(this.options.perMessageDeflate){let c=new Qe(this.options.perMessageDeflate,!0,this.options.maxPayload);try{let l=Mc(e.headers["sec-websocket-extensions"]);l[Qe.extensionName]&&(c.accept(l[Qe.extensionName]),_[Qe.extensionName]=c)}catch{return gr(r,400)}}if(this.options.verifyClient){let c={origin:e.headers[`${o===8?"sec-websocket-origin":"origin"}`],secure:!!(e.socket.authorized||e.socket.encrypted),req:e};if(this.options.verifyClient.length===2){this.options.verifyClient(c,(l,u,d,p)=>{if(!l)return gr(r,u||401,d,p);this.completeUpgrade(a,_,e,r,t,n)});return}if(!this.options.verifyClient(c))return gr(r,401)}this.completeUpgrade(a,_,e,r,t,n)}completeUpgrade(e,r,t,n,a,o){if(!n.readable||!n.writable)return n.destroy();if(n[Gc])throw new Error("server.handleUpgrade() was called more than once with the same socket, possibly due to a misconfiguration");if(this._state>wa)return gr(n,503);let c=["HTTP/1.1 101 Switching Protocols","Upgrade: websocket","Connection: Upgrade",`Sec-WebSocket-Accept: ${Pc("sha1").update(e+Rc).digest("base64")}`],l=new xc(null),u=t.headers["sec-websocket-protocol"];if(u&&(u=u.split(",").map(Hc),this.options.handleProtocols?u=this.options.handleProtocols(u,t):u=u[0],u&&(c.push(`Sec-WebSocket-Protocol: ${u}`),l._protocol=u)),r[Qe.extensionName]){let d=r[Qe.extensionName].params,p=Fc({[Qe.extensionName]:[d]});c.push(`Sec-WebSocket-Extensions: ${p}`),l._extensions=r}this.emit("headers",c,t),n.write(c.concat(`\r `).join(`\r `)),n.removeListener("error",qt),l.setSocket(n,a,this.options.maxPayload),this.clients&&(this.clients.add(l),l.on("close",()=>this.clients.delete(l))),o(l,t)}};ka.exports=Vt;function Ic(f,e){for(let r of Object.keys(e))f.on(r,e[r]);return function(){for(let t of Object.keys(e))f.removeListener(t,e[t])}}function Wt(f){f._state=Aa,f.emit("close")}function qt(){this.destroy()}function gr(f,e,r,t){f.writable&&(r=r||Br.STATUS_CODES[e],t={Connection:"close","Content-Type":"text/html","Content-Length":Buffer.byteLength(r),...t},f.write(`HTTP/1.1 ${e} ${Br.STATUS_CODES[e]}\r `+Object.keys(t).map(n=>`${n}: ${t[n]}`).join(`\r `)+`\r \r `+r)),f.removeListener("error",qt),f.destroy()}function Hc(f){return f.trim()}});var $t=x((yp,Ta)=>{"use strict";var vr=Nt();vr.createWebSocketStream=ya();vr.Server=Da();vr.Receiver=Pt();vr.Sender=Ft();Ta.exports=vr});var Xt=x((exports,module)=>{"use strict";var DuckDB=(()=>{var f;var _scriptName=typeof document<"u"?(f=document.currentScript)==null?void 0:f.src:void 0;return typeof __filename<"u"&&(_scriptName=_scriptName||__filename),function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((e,r)=>{readyPromiseResolve=e,readyPromiseReject=r}),ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope<"u",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer",ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER,moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=(e,r)=>{throw r},scriptDirectory="";function locateFile(e){return Module.locateFile?Module.locateFile(e,scriptDirectory):scriptDirectory+e}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs"),nodePath=require("path");scriptDirectory=__dirname+"/",readBinary=e=>{e=isFileURI(e)?new URL(e):nodePath.normalize(e);var r=fs.readFileSync(e);return r},readAsync=(e,r=!0)=>(e=isFileURI(e)?new URL(e):nodePath.normalize(e),new Promise((t,n)=>{fs.readFile(e,r?void 0:"utf8",(a,o)=>{a?n(a):t(r?o.buffer:o)})})),!Module.thisProgram&&process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=(e,r)=>{throw process.exitCode=e,r}}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:typeof document<"u"&&document.currentScript&&(scriptDirectory=document.currentScript.src),_scriptName&&(scriptDirectory=_scriptName),scriptDirectory.startsWith("blob:")?scriptDirectory="":scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1),ENVIRONMENT_IS_WORKER&&(readBinary=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),readAsync=e=>fetch(e,{credentials:"same-origin"}).then(r=>r.ok?r.arrayBuffer():Promise.reject(new Error(r.status+" : "+r.url))));var out=Module.print||console.log.bind(console),err=Module.printErr||console.error.bind(console);Object.assign(Module,moduleOverrides),moduleOverrides=null,Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram);var dynamicLibraries=Module.dynamicLibraries||[],wasmBinary=Module.wasmBinary,wasmMemory,ABORT=!1,EXITSTATUS;function assert(e,r){e||abort(r)}var HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var e=wasmMemory.buffer;Module.HEAP8=HEAP8=new Int8Array(e),Module.HEAP16=HEAP16=new Int16Array(e),Module.HEAPU8=HEAPU8=new Uint8Array(e),Module.HEAPU16=HEAPU16=new Uint16Array(e),Module.HEAP32=HEAP32=new Int32Array(e),Module.HEAPU32=HEAPU32=new Uint32Array(e),Module.HEAPF32=HEAPF32=new Float32Array(e),Module.HEAPF64=HEAPF64=new Float64Array(e)}if(Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var INITIAL_MEMORY=Module.INITIAL_MEMORY||16777216;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:65536})}updateMemoryViews();var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],__RELOC_FUNCS__=[],runtimeInitialized=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),!Module.noFSInit&&!FS.initialized&&FS.init(),FS.ignorePermissions=!1,TTY.init(),SOCKFS.root=FS.mount(SOCKFS,{},null),PIPEFS.root=FS.mount(PIPEFS,{},null),callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}var runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){var r;runDependencies++,(r=Module.monitorRunDependencies)==null||r.call(Module,runDependencies)}function removeRunDependency(e){var t;if(runDependencies--,(t=Module.monitorRunDependencies)==null||t.call(Module,runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var r=dependenciesFulfilled;dependenciesFulfilled=null,r()}}function abort(e){var t;(t=Module.onAbort)==null||t.call(Module,e),e="Aborted("+e+")",err(e),ABORT=!0,e+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(e);throw readyPromiseReject(r),r}var dataURIPrefix="data:application/octet-stream;base64,",isDataURI=e=>e.startsWith(dataURIPrefix),isFileURI=e=>e.startsWith("file://");function findWasmBinary(){var e="./duckdb-mvp.wasm";return isDataURI(e)?e:locateFile(e)}var wasmBinaryFile;function getBinarySync(e){if(e==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(e);throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(e){return wasmBinary?Promise.resolve().then(()=>getBinarySync(e)):readAsync(e).then(r=>new Uint8Array(r),()=>getBinarySync(e))}function instantiateArrayBuffer(e,r,t){return getBinaryPromise(e).then(n=>WebAssembly.instantiate(n,r)).then(t,n=>{err(`failed to asynchronously prepare wasm: ${n}`),abort(n)})}function instantiateAsync(e,r,t,n){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(r)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"?fetch(r,{credentials:"same-origin"}).then(a=>{var o=WebAssembly.instantiateStreaming(a,t);return o.then(n,function(_){return err(`wasm streaming compile failed: ${_}`),err("falling back to ArrayBuffer instantiation"),instantiateArrayBuffer(r,t,n)})}):instantiateArrayBuffer(r,t,n)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}function createWasm(){var e=getWasmImports();function r(n,a){wasmExports=n.exports,wasmExports=relocateExports(wasmExports,1024);var o=getDylinkMetadata(a);return o.neededDynlibs&&(dynamicLibraries=o.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),wasmExports=applySignatureConversions(wasmExports),addOnInit(wasmExports.__wasm_call_ctors),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate"),wasmExports}addRunDependency("wasm-instantiate");function t(n){r(n.instance,n.module)}if(Module.instantiateWasm)try{return Module.instantiateWasm(e,r)}catch(n){err(`Module.instantiateWasm callback failed with error: ${n}`),readyPromiseReject(n)}return wasmBinaryFile??(wasmBinaryFile=findWasmBinary()),instantiateAsync(wasmBinary,wasmBinaryFile,e,t).catch(readyPromiseReject),{}}var tempDouble,tempI64,ASM_CONSTS={2313784:(e,r)=>{var t=typeof runtime=="object"&&runtime&&typeof runtime.whereToLoad=="function"&&runtime.whereToLoad?runtime.whereToLoad(UTF8ToString(e)):UTF8ToString(r),n=lengthBytesUTF8(t)+1,a=_malloc(n);return stringToUTF8(t,a,n),a},2314150:(e,r)=>{var t=UTF8ToString(e);if(typeof XMLHttpRequest>"u"){let b=require("os"),y=require("path"),D=require("fs");var n=t.split("/"),a=n.length,o=y.join(b.homedir(),".duckdb/extensions/"+n[a-4]+"/"+n[a-3]+"/"+n[a-2]+"/"),_=y.join(o,n[a-1]);try{if(D.existsSync(o)||D.mkdirSync(o,{recursive:!0}),D.existsSync(_))u=D.readFileSync(_);else{let L=new Int32Array(new SharedArrayBuffer(8));var c=require("worker_threads").Worker,l=new c("const {Worker,isMainThread,parentPort,workerData,} = require('node:worker_threads');var times = 0;var SAB = 23;var Z = 0; async function ZZZ(e) {var x = await fetch(e);var res = await x.arrayBuffer();Atomics.store(SAB, 1, res.byteLength);Atomics.store(SAB, 0, 1);Atomics.notify(SAB, 1);Atomics.notify(SAB, 0);Z = res;};parentPort.on('message', function(event) {if (times == 0) {times++;SAB = event;} else if (times == 1) {times++; ZZZ(event);} else {const a = new Uint8Array(Z);const b = new Uint8Array(event.buffer);var K = Z.byteLength;for (var i = 0; i < K; i++) {b[i] = a[i];}Atomics.notify(event, 0);Atomics.store(SAB, 0, 2);Atomics.notify(SAB, 0);}});",{eval:!0}),u;L[0]=0,L[2]=4,l.postMessage(L),l.postMessage(t),Atomics.wait(L,0,0);let C=new Int32Array(new SharedArrayBuffer(L[1]+3-(L[1]+3)%4));l.postMessage(C),Atomics.wait(L,0,1);var d=new Uint8Array(C.buffer,0,L[1]);u=d,l.terminate(),D.writeFileSync(_,u)}}catch(L){return console.log("Error fetching module",L),0}}else{let b=new XMLHttpRequest;if(b.open("GET",t,!1),b.responseType="arraybuffer",b.send(null),b.status!=200)return 0;u=b.response}for(var p=WebAssembly.validate(u),m=u.byteLength,g=_malloc(m+4),v=new Uint8Array(u),h=0;h<m;h++)Module.HEAPU8[h+g+4]=v[h];var S=new Uint8Array(4);return S[0]=m%256,m-=S[0],m/=256,S[1]=m%256,m-=S[1],m/=256,S[2]=m%256,m-=S[2],m/=256,S[3]=m%256,m-=S[3],m/=256,Module.HEAPU8.set(S,g),FS.writeFile(UTF8ToString(r),new Uint8Array(u)),g},2316791:e=>{if(!e)return AL.alcErr=40964,1},2316839:e=>{if(!AL.currentCtx)return err("alGetProcAddress() called without a valid context"),1;if(!e)return AL.currentCtx.err=40963,1}};class ExitStatus{name="ExitStatus";constructor(r){this.message=`Program terminated with exit(${r})`,this.status=r}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(e,r){var t=GOT[r];return t||(t=GOT[r]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(r)||(t.required=!0),t}},callRuntimeCallbacks=e=>{for(;e.length>0;)e.shift()(Module)},UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder:void 0,UTF8ArrayToString=(e,r=0,t=NaN)=>{r>>>=0;for(var n=r+t,a=r;e[a]&&!(a>=n);)++a;if(a-r>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(r,a));for(var o="";r<a;){var _=e[r++];if(!(_&128)){o+=String.fromCharCode(_);continue}var c=e[r++]&63;if((_&224)==192){o+=String.fromCharCode((_&31)<<6|c);continue}var l=e[r++]&63;if((_&240)==224?_=(_&15)<<12|c<<6|l:_=(_&7)<<18|c<<12|l<<6|e[r++]&63,_<65536)o+=String.fromCharCode(_);else{var u=_-65536;o+=String.fromCharCode(55296|u>>10,56320|u&1023)}}return o},getDylinkMetadata=e=>{var r=0,t=0;function n(){return e[r++]}function a(){for(var I=0,A=1;;){var k=e[r++];if(I+=(k&127)*A,A*=128,!(k&128))break}return I}function o(){var I=a();return r+=I,UTF8ArrayToString(e,r-I,I)}function _(I,A){if(I)throw new Error(A)}var c="dylink.0";if(e instanceof WebAssembly.Module){var l=WebAssembly.Module.customSections(e,c);l.length===0&&(c="dylink",l=WebAssembly.Module.customSections(e,c)),_(l.length===0,"need dylink section"),e=new Uint8Array(l[0]),t=e.length}else{var u=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer),d=u[0]==1836278016;_(!d,"need to see wasm magic number"),_(e[8]!==0,"need the dylink section to be first"),r=9;var p=a();t=r+p,c=o()}var m={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(c=="dylink"){m.memorySize=a(),m.memoryAlign=a(),m.tableSize=a(),m.tableAlign=a();for(var g=a(),v=0;v<g;++v){var h=o();m.neededDynlibs.push(h)}}else{_(c!=="d