UNPKG

@r-universe/webr

Version:

The statistical programming language R compiled into WASM for use in a web browser and node.

1 lines 74.8 kB
"use strict";var sn=Object.create;var vt=Object.defineProperty;var nn=Object.getOwnPropertyDescriptor;var on=Object.getOwnPropertyNames;var an=Object.getPrototypeOf,ln=Object.prototype.hasOwnProperty;var S=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports),cn=(s,e)=>{for(var t in e)vt(s,t,{get:e[t],enumerable:!0})},es=(s,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of on(e))!ln.call(s,n)&&n!==t&&vt(s,n,{get:()=>e[n],enumerable:!(r=nn(e,n))||r.enumerable});return s};var ne=(s,e,t)=>(t=s!=null?sn(an(s)):{},es(e||!s||!s.__esModule?vt(t,"default",{value:s,enumerable:!0}):t,s)),un=s=>es(vt({},"__esModule",{value:!0}),s);var Rr=(s,e,t)=>{if(!e.has(s))throw TypeError("Cannot "+t)};var a=(s,e,t)=>(Rr(s,e,"read from private field"),t?t.call(s):e.get(s)),u=(s,e,t)=>{if(e.has(s))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(s):e.set(s,t)},d=(s,e,t,r)=>(Rr(s,e,"write to private field"),r?r.call(s,t):e.set(s,t),t),ts=(s,e,t,r)=>({set _(n){d(s,e,n,t)},get _(){return a(s,e,r)}}),P=(s,e,t)=>(Rr(s,e,"access private method"),t);var Je=S(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.getUint64=C.getInt64=C.setInt64=C.setUint64=C.UINT32_MAX=void 0;C.UINT32_MAX=4294967295;function Rn(s,e,t){let r=t/4294967296,n=t;s.setUint32(e,r),s.setUint32(e+4,n)}C.setUint64=Rn;function mn(s,e,t){let r=Math.floor(t/4294967296),n=t;s.setUint32(e,r),s.setUint32(e+4,n)}C.setInt64=mn;function gn(s,e){let t=s.getInt32(e),r=s.getUint32(e+4);return t*4294967296+r}C.getInt64=gn;function bn(s,e){let t=s.getUint32(e),r=s.getUint32(e+4);return t*4294967296+r}C.getUint64=bn});var Ut=S(M=>{"use strict";var kr,Mr,Dr;Object.defineProperty(M,"__esModule",{value:!0});M.utf8DecodeTD=M.TEXT_DECODER_THRESHOLD=M.utf8DecodeJs=M.utf8EncodeTE=M.TEXT_ENCODER_THRESHOLD=M.utf8EncodeJs=M.utf8Count=void 0;var ds=Je(),It=(typeof process>"u"||((kr=process==null?void 0:process.env)===null||kr===void 0?void 0:kr.TEXT_ENCODING)!=="never")&&typeof TextEncoder<"u"&&typeof TextDecoder<"u";function wn(s){let e=s.length,t=0,r=0;for(;r<e;){let n=s.charCodeAt(r++);if(n&4294967168)if(!(n&4294965248))t+=2;else{if(n>=55296&&n<=56319&&r<e){let o=s.charCodeAt(r);(o&64512)===56320&&(++r,n=((n&1023)<<10)+(o&1023)+65536)}n&4294901760?t+=4:t+=3}else{t++;continue}}return t}M.utf8Count=wn;function xn(s,e,t){let r=s.length,n=t,o=0;for(;o<r;){let i=s.charCodeAt(o++);if(i&4294967168)if(!(i&4294965248))e[n++]=i>>6&31|192;else{if(i>=55296&&i<=56319&&o<r){let l=s.charCodeAt(o);(l&64512)===56320&&(++o,i=((i&1023)<<10)+(l&1023)+65536)}i&4294901760?(e[n++]=i>>18&7|240,e[n++]=i>>12&63|128,e[n++]=i>>6&63|128):(e[n++]=i>>12&15|224,e[n++]=i>>6&63|128)}else{e[n++]=i;continue}e[n++]=i&63|128}}M.utf8EncodeJs=xn;var He=It?new TextEncoder:void 0;M.TEXT_ENCODER_THRESHOLD=It?typeof process<"u"&&((Mr=process==null?void 0:process.env)===null||Mr===void 0?void 0:Mr.TEXT_ENCODING)!=="force"?200:0:ds.UINT32_MAX;function vn(s,e,t){e.set(He.encode(s),t)}function En(s,e,t){He.encodeInto(s,e.subarray(t))}M.utf8EncodeTE=He!=null&&He.encodeInto?En:vn;var Pn=4096;function Tn(s,e,t){let r=e,n=r+t,o=[],i="";for(;r<n;){let l=s[r++];if(!(l&128))o.push(l);else if((l&224)===192){let p=s[r++]&63;o.push((l&31)<<6|p)}else if((l&240)===224){let p=s[r++]&63,D=s[r++]&63;o.push((l&31)<<12|p<<6|D)}else if((l&248)===240){let p=s[r++]&63,D=s[r++]&63,b=s[r++]&63,j=(l&7)<<18|p<<12|D<<6|b;j>65535&&(j-=65536,o.push(j>>>10&1023|55296),j=56320|j&1023),o.push(j)}else o.push(l);o.length>=Pn&&(i+=String.fromCharCode(...o),o.length=0)}return o.length>0&&(i+=String.fromCharCode(...o)),i}M.utf8DecodeJs=Tn;var _n=It?new TextDecoder:null;M.TEXT_DECODER_THRESHOLD=It?typeof process<"u"&&((Dr=process==null?void 0:process.env)===null||Dr===void 0?void 0:Dr.TEXT_DECODER)!=="force"?200:0:ds.UINT32_MAX;function Sn(s,e,t){let r=s.subarray(e,e+t);return _n.decode(r)}M.utf8DecodeTD=Sn});var Ar=S(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.ExtData=void 0;var Wr=class{constructor(e,t){this.type=e,this.data=t}};Ct.ExtData=Wr});var Nt=S(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.DecodeError=void 0;var be=class extends Error{constructor(e){super(e);let t=Object.create(be.prototype);Object.setPrototypeOf(this,t),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:be.name})}};jt.DecodeError=be});var Or=S(_=>{"use strict";Object.defineProperty(_,"__esModule",{value:!0});_.timestampExtension=_.decodeTimestampExtension=_.decodeTimestampToTimeSpec=_.encodeTimestampExtension=_.encodeDateToTimeSpec=_.encodeTimeSpecToTimestamp=_.EXT_TIMESTAMP=void 0;var kn=Nt(),hs=Je();_.EXT_TIMESTAMP=-1;var Mn=4294967296-1,Dn=17179869184-1;function ys({sec:s,nsec:e}){if(s>=0&&e>=0&&s<=Dn)if(e===0&&s<=Mn){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,s),t}else{let t=s/4294967296,r=s&4294967295,n=new Uint8Array(8),o=new DataView(n.buffer);return o.setUint32(0,e<<2|t&3),o.setUint32(4,r),n}else{let t=new Uint8Array(12),r=new DataView(t.buffer);return r.setUint32(0,e),(0,hs.setInt64)(r,4,s),t}}_.encodeTimeSpecToTimestamp=ys;function fs(s){let e=s.getTime(),t=Math.floor(e/1e3),r=(e-t*1e3)*1e6,n=Math.floor(r/1e9);return{sec:t+n,nsec:r-n*1e9}}_.encodeDateToTimeSpec=fs;function Rs(s){if(s instanceof Date){let e=fs(s);return ys(e)}else return null}_.encodeTimestampExtension=Rs;function ms(s){let e=new DataView(s.buffer,s.byteOffset,s.byteLength);switch(s.byteLength){case 4:return{sec:e.getUint32(0),nsec:0};case 8:{let t=e.getUint32(0),r=e.getUint32(4),n=(t&3)*4294967296+r,o=t>>>2;return{sec:n,nsec:o}}case 12:{let t=(0,hs.getInt64)(e,4),r=e.getUint32(0);return{sec:t,nsec:r}}default:throw new kn.DecodeError(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${s.length}`)}}_.decodeTimestampToTimeSpec=ms;function gs(s){let e=ms(s);return new Date(e.sec*1e3+e.nsec/1e6)}_.decodeTimestampExtension=gs;_.timestampExtension={type:_.EXT_TIMESTAMP,encode:Rs,decode:gs}});var Ft=S(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.ExtensionCodec=void 0;var Bt=Ar(),Wn=Or(),ze=class{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(Wn.timestampExtension)}register({type:e,encode:t,decode:r}){if(e>=0)this.encoders[e]=t,this.decoders[e]=r;else{let n=1+e;this.builtInEncoders[n]=t,this.builtInDecoders[n]=r}}tryToEncode(e,t){for(let r=0;r<this.builtInEncoders.length;r++){let n=this.builtInEncoders[r];if(n!=null){let o=n(e,t);if(o!=null){let i=-1-r;return new Bt.ExtData(i,o)}}}for(let r=0;r<this.encoders.length;r++){let n=this.encoders[r];if(n!=null){let o=n(e,t);if(o!=null){let i=r;return new Bt.ExtData(i,o)}}}return e instanceof Bt.ExtData?e:null}decode(e,t,r){let n=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return n?n(e,t,r):new Bt.ExtData(t,e)}};Lt.ExtensionCodec=ze;ze.defaultCodec=new ze});var Ir=S(we=>{"use strict";Object.defineProperty(we,"__esModule",{value:!0});we.createDataView=we.ensureUint8Array=void 0;function bs(s){return s instanceof Uint8Array?s:ArrayBuffer.isView(s)?new Uint8Array(s.buffer,s.byteOffset,s.byteLength):s instanceof ArrayBuffer?new Uint8Array(s):Uint8Array.from(s)}we.ensureUint8Array=bs;function An(s){if(s instanceof ArrayBuffer)return new DataView(s);let e=bs(s);return new DataView(e.buffer,e.byteOffset,e.byteLength)}we.createDataView=An});var Cr=S(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.Encoder=V.DEFAULT_INITIAL_BUFFER_SIZE=V.DEFAULT_MAX_DEPTH=void 0;var Xe=Ut(),On=Ft(),ws=Je(),In=Ir();V.DEFAULT_MAX_DEPTH=100;V.DEFAULT_INITIAL_BUFFER_SIZE=2048;var Ur=class{constructor(e=On.ExtensionCodec.defaultCodec,t=void 0,r=V.DEFAULT_MAX_DEPTH,n=V.DEFAULT_INITIAL_BUFFER_SIZE,o=!1,i=!1,l=!1,p=!1){this.extensionCodec=e,this.context=t,this.maxDepth=r,this.initialBufferSize=n,this.sortKeys=o,this.forceFloat32=i,this.ignoreUndefined=l,this.forceIntegerToFloat=p,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}reinitializeState(){this.pos=0}encodeSharedRef(e){return this.reinitializeState(),this.doEncode(e,1),this.bytes.subarray(0,this.pos)}encode(e){return this.reinitializeState(),this.doEncode(e,1),this.bytes.slice(0,this.pos)}doEncode(e,t){if(t>this.maxDepth)throw new Error(`Too deep objects in depth ${t}`);e==null?this.encodeNil():typeof e=="boolean"?this.encodeBoolean(e):typeof e=="number"?this.encodeNumber(e):typeof e=="string"?this.encodeString(e):this.encodeObject(e,t)}ensureBufferSizeToWrite(e){let t=this.pos+e;this.view.byteLength<t&&this.resizeBuffer(t*2)}resizeBuffer(e){let t=new ArrayBuffer(e),r=new Uint8Array(t),n=new DataView(t);r.set(this.bytes),this.view=n,this.bytes=r}encodeNil(){this.writeU8(192)}encodeBoolean(e){e===!1?this.writeU8(194):this.writeU8(195)}encodeNumber(e){Number.isSafeInteger(e)&&!this.forceIntegerToFloat?e>=0?e<128?this.writeU8(e):e<256?(this.writeU8(204),this.writeU8(e)):e<65536?(this.writeU8(205),this.writeU16(e)):e<4294967296?(this.writeU8(206),this.writeU32(e)):(this.writeU8(207),this.writeU64(e)):e>=-32?this.writeU8(224|e+32):e>=-128?(this.writeU8(208),this.writeI8(e)):e>=-32768?(this.writeU8(209),this.writeI16(e)):e>=-2147483648?(this.writeU8(210),this.writeI32(e)):(this.writeU8(211),this.writeI64(e)):this.forceFloat32?(this.writeU8(202),this.writeF32(e)):(this.writeU8(203),this.writeF64(e))}writeStringHeader(e){if(e<32)this.writeU8(160+e);else if(e<256)this.writeU8(217),this.writeU8(e);else if(e<65536)this.writeU8(218),this.writeU16(e);else if(e<4294967296)this.writeU8(219),this.writeU32(e);else throw new Error(`Too long string: ${e} bytes in UTF-8`)}encodeString(e){if(e.length>Xe.TEXT_ENCODER_THRESHOLD){let n=(0,Xe.utf8Count)(e);this.ensureBufferSizeToWrite(5+n),this.writeStringHeader(n),(0,Xe.utf8EncodeTE)(e,this.bytes,this.pos),this.pos+=n}else{let n=(0,Xe.utf8Count)(e);this.ensureBufferSizeToWrite(5+n),this.writeStringHeader(n),(0,Xe.utf8EncodeJs)(e,this.bytes,this.pos),this.pos+=n}}encodeObject(e,t){let r=this.extensionCodec.tryToEncode(e,this.context);if(r!=null)this.encodeExtension(r);else if(Array.isArray(e))this.encodeArray(e,t);else if(ArrayBuffer.isView(e))this.encodeBinary(e);else if(typeof e=="object")this.encodeMap(e,t);else throw new Error(`Unrecognized object: ${Object.prototype.toString.apply(e)}`)}encodeBinary(e){let t=e.byteLength;if(t<256)this.writeU8(196),this.writeU8(t);else if(t<65536)this.writeU8(197),this.writeU16(t);else if(t<4294967296)this.writeU8(198),this.writeU32(t);else throw new Error(`Too large binary: ${t}`);let r=(0,In.ensureUint8Array)(e);this.writeU8a(r)}encodeArray(e,t){let r=e.length;if(r<16)this.writeU8(144+r);else if(r<65536)this.writeU8(220),this.writeU16(r);else if(r<4294967296)this.writeU8(221),this.writeU32(r);else throw new Error(`Too large array: ${r}`);for(let n of e)this.doEncode(n,t+1)}countWithoutUndefined(e,t){let r=0;for(let n of t)e[n]!==void 0&&r++;return r}encodeMap(e,t){let r=Object.keys(e);this.sortKeys&&r.sort();let n=this.ignoreUndefined?this.countWithoutUndefined(e,r):r.length;if(n<16)this.writeU8(128+n);else if(n<65536)this.writeU8(222),this.writeU16(n);else if(n<4294967296)this.writeU8(223),this.writeU32(n);else throw new Error(`Too large map object: ${n}`);for(let o of r){let i=e[o];this.ignoreUndefined&&i===void 0||(this.encodeString(o),this.doEncode(i,t+1))}}encodeExtension(e){let t=e.data.length;if(t===1)this.writeU8(212);else if(t===2)this.writeU8(213);else if(t===4)this.writeU8(214);else if(t===8)this.writeU8(215);else if(t===16)this.writeU8(216);else if(t<256)this.writeU8(199),this.writeU8(t);else if(t<65536)this.writeU8(200),this.writeU16(t);else if(t<4294967296)this.writeU8(201),this.writeU32(t);else throw new Error(`Too large extension object: ${t}`);this.writeI8(e.type),this.writeU8a(e.data)}writeU8(e){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,e),this.pos++}writeU8a(e){let t=e.length;this.ensureBufferSizeToWrite(t),this.bytes.set(e,this.pos),this.pos+=t}writeI8(e){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,e),this.pos++}writeU16(e){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,e),this.pos+=2}writeI16(e){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,e),this.pos+=2}writeU32(e){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,e),this.pos+=4}writeI32(e){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,e),this.pos+=4}writeF32(e){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,e),this.pos+=4}writeF64(e){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,e),this.pos+=8}writeU64(e){this.ensureBufferSizeToWrite(8),(0,ws.setUint64)(this.view,this.pos,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),(0,ws.setInt64)(this.view,this.pos,e),this.pos+=8}};V.Encoder=Ur});var xs=S(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.encode=void 0;var Un=Cr(),Cn={};function jn(s,e=Cn){return new Un.Encoder(e.extensionCodec,e.context,e.maxDepth,e.initialBufferSize,e.sortKeys,e.forceFloat32,e.ignoreUndefined,e.forceIntegerToFloat).encodeSharedRef(s)}qt.encode=jn});var vs=S(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.prettyByte=void 0;function Nn(s){return`${s<0?"-":""}0x${Math.abs(s).toString(16).padStart(2,"0")}`}Vt.prettyByte=Nn});var Es=S(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.CachedKeyDecoder=void 0;var Bn=Ut(),Ln=16,Fn=16,jr=class{constructor(e=Ln,t=Fn){this.maxKeyLength=e,this.maxLengthPerKey=t,this.hit=0,this.miss=0,this.caches=[];for(let r=0;r<this.maxKeyLength;r++)this.caches.push([])}canBeCached(e){return e>0&&e<=this.maxKeyLength}find(e,t,r){let n=this.caches[r-1];e:for(let o of n){let i=o.bytes;for(let l=0;l<r;l++)if(i[l]!==e[t+l])continue e;return o.str}return null}store(e,t){let r=this.caches[e.length-1],n={bytes:e,str:t};r.length>=this.maxLengthPerKey?r[Math.random()*r.length|0]=n:r.push(n)}decode(e,t,r){let n=this.find(e,t,r);if(n!=null)return this.hit++,n;this.miss++;let o=(0,Bn.utf8DecodeJs)(e,t,r),i=Uint8Array.prototype.slice.call(e,t,t+r);return this.store(i,o),o}};Jt.CachedKeyDecoder=jr});var Ht=S(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.Decoder=Q.DataViewIndexOutOfBoundsError=void 0;var Nr=vs(),qn=Ft(),le=Je(),Br=Ut(),Lr=Ir(),Vn=Es(),K=Nt(),Jn=s=>{let e=typeof s;return e==="string"||e==="number"},Ge=-1,qr=new DataView(new ArrayBuffer(0)),Hn=new Uint8Array(qr.buffer);Q.DataViewIndexOutOfBoundsError=(()=>{try{qr.getInt8(0)}catch(s){return s.constructor}throw new Error("never reached")})();var Ps=new Q.DataViewIndexOutOfBoundsError("Insufficient data"),zn=new Vn.CachedKeyDecoder,Fr=class{constructor(e=qn.ExtensionCodec.defaultCodec,t=void 0,r=le.UINT32_MAX,n=le.UINT32_MAX,o=le.UINT32_MAX,i=le.UINT32_MAX,l=le.UINT32_MAX,p=zn){this.extensionCodec=e,this.context=t,this.maxStrLength=r,this.maxBinLength=n,this.maxArrayLength=o,this.maxMapLength=i,this.maxExtLength=l,this.keyDecoder=p,this.totalPos=0,this.pos=0,this.view=qr,this.bytes=Hn,this.headByte=Ge,this.stack=[]}reinitializeState(){this.totalPos=0,this.headByte=Ge,this.stack.length=0}setBuffer(e){this.bytes=(0,Lr.ensureUint8Array)(e),this.view=(0,Lr.createDataView)(this.bytes),this.pos=0}appendBuffer(e){if(this.headByte===Ge&&!this.hasRemaining(1))this.setBuffer(e);else{let t=this.bytes.subarray(this.pos),r=(0,Lr.ensureUint8Array)(e),n=new Uint8Array(t.length+r.length);n.set(t),n.set(r,t.length),this.setBuffer(n)}}hasRemaining(e){return this.view.byteLength-this.pos>=e}createExtraByteError(e){let{view:t,pos:r}=this;return new RangeError(`Extra ${t.byteLength-r} of ${t.byteLength} byte(s) found at buffer[${e}]`)}decode(e){this.reinitializeState(),this.setBuffer(e);let t=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return t}*decodeMulti(e){for(this.reinitializeState(),this.setBuffer(e);this.hasRemaining(1);)yield this.doDecodeSync()}async decodeAsync(e){let t=!1,r;for await(let l of e){if(t)throw this.createExtraByteError(this.totalPos);this.appendBuffer(l);try{r=this.doDecodeSync(),t=!0}catch(p){if(!(p instanceof Q.DataViewIndexOutOfBoundsError))throw p}this.totalPos+=this.pos}if(t){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return r}let{headByte:n,pos:o,totalPos:i}=this;throw new RangeError(`Insufficient data in parsing ${(0,Nr.prettyByte)(n)} at ${i} (${o} in the current buffer)`)}decodeArrayStream(e){return this.decodeMultiAsync(e,!0)}decodeStream(e){return this.decodeMultiAsync(e,!1)}async*decodeMultiAsync(e,t){let r=t,n=-1;for await(let o of e){if(t&&n===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(o),r&&(n=this.readArraySize(),r=!1,this.complete());try{for(;yield this.doDecodeSync(),--n!==0;);}catch(i){if(!(i instanceof Q.DataViewIndexOutOfBoundsError))throw i}this.totalPos+=this.pos}}doDecodeSync(){e:for(;;){let e=this.readHeadByte(),t;if(e>=224)t=e-256;else if(e<192)if(e<128)t=e;else if(e<144){let n=e-128;if(n!==0){this.pushMapState(n),this.complete();continue e}else t={}}else if(e<160){let n=e-144;if(n!==0){this.pushArrayState(n),this.complete();continue e}else t=[]}else{let n=e-160;t=this.decodeUtf8String(n,0)}else if(e===192)t=null;else if(e===194)t=!1;else if(e===195)t=!0;else if(e===202)t=this.readF32();else if(e===203)t=this.readF64();else if(e===204)t=this.readU8();else if(e===205)t=this.readU16();else if(e===206)t=this.readU32();else if(e===207)t=this.readU64();else if(e===208)t=this.readI8();else if(e===209)t=this.readI16();else if(e===210)t=this.readI32();else if(e===211)t=this.readI64();else if(e===217){let n=this.lookU8();t=this.decodeUtf8String(n,1)}else if(e===218){let n=this.lookU16();t=this.decodeUtf8String(n,2)}else if(e===219){let n=this.lookU32();t=this.decodeUtf8String(n,4)}else if(e===220){let n=this.readU16();if(n!==0){this.pushArrayState(n),this.complete();continue e}else t=[]}else if(e===221){let n=this.readU32();if(n!==0){this.pushArrayState(n),this.complete();continue e}else t=[]}else if(e===222){let n=this.readU16();if(n!==0){this.pushMapState(n),this.complete();continue e}else t={}}else if(e===223){let n=this.readU32();if(n!==0){this.pushMapState(n),this.complete();continue e}else t={}}else if(e===196){let n=this.lookU8();t=this.decodeBinary(n,1)}else if(e===197){let n=this.lookU16();t=this.decodeBinary(n,2)}else if(e===198){let n=this.lookU32();t=this.decodeBinary(n,4)}else if(e===212)t=this.decodeExtension(1,0);else if(e===213)t=this.decodeExtension(2,0);else if(e===214)t=this.decodeExtension(4,0);else if(e===215)t=this.decodeExtension(8,0);else if(e===216)t=this.decodeExtension(16,0);else if(e===199){let n=this.lookU8();t=this.decodeExtension(n,1)}else if(e===200){let n=this.lookU16();t=this.decodeExtension(n,2)}else if(e===201){let n=this.lookU32();t=this.decodeExtension(n,4)}else throw new K.DecodeError(`Unrecognized type byte: ${(0,Nr.prettyByte)(e)}`);this.complete();let r=this.stack;for(;r.length>0;){let n=r[r.length-1];if(n.type===0)if(n.array[n.position]=t,n.position++,n.position===n.size)r.pop(),t=n.array;else continue e;else if(n.type===1){if(!Jn(t))throw new K.DecodeError("The type of key must be string or number but "+typeof t);if(t==="__proto__")throw new K.DecodeError("The key __proto__ is not allowed");n.key=t,n.type=2;continue e}else if(n.map[n.key]=t,n.readCount++,n.readCount===n.size)r.pop(),t=n.map;else{n.key=null,n.type=1;continue e}}return t}}readHeadByte(){return this.headByte===Ge&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=Ge}readArraySize(){let e=this.readHeadByte();switch(e){case 220:return this.readU16();case 221:return this.readU32();default:{if(e<160)return e-144;throw new K.DecodeError(`Unrecognized array type byte: ${(0,Nr.prettyByte)(e)}`)}}}pushMapState(e){if(e>this.maxMapLength)throw new K.DecodeError(`Max length exceeded: map length (${e}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.push({type:1,size:e,key:null,readCount:0,map:{}})}pushArrayState(e){if(e>this.maxArrayLength)throw new K.DecodeError(`Max length exceeded: array length (${e}) > maxArrayLength (${this.maxArrayLength})`);this.stack.push({type:0,size:e,array:new Array(e),position:0})}decodeUtf8String(e,t){var r;if(e>this.maxStrLength)throw new K.DecodeError(`Max length exceeded: UTF-8 byte length (${e}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+t+e)throw Ps;let n=this.pos+t,o;return this.stateIsMapKey()&&(!((r=this.keyDecoder)===null||r===void 0)&&r.canBeCached(e))?o=this.keyDecoder.decode(this.bytes,n,e):e>Br.TEXT_DECODER_THRESHOLD?o=(0,Br.utf8DecodeTD)(this.bytes,n,e):o=(0,Br.utf8DecodeJs)(this.bytes,n,e),this.pos+=t+e,o}stateIsMapKey(){return this.stack.length>0?this.stack[this.stack.length-1].type===1:!1}decodeBinary(e,t){if(e>this.maxBinLength)throw new K.DecodeError(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+t))throw Ps;let r=this.pos+t,n=this.bytes.subarray(r,r+e);return this.pos+=t+e,n}decodeExtension(e,t){if(e>this.maxExtLength)throw new K.DecodeError(`Max length exceeded: ext length (${e}) > maxExtLength (${this.maxExtLength})`);let r=this.view.getInt8(this.pos+t),n=this.decodeBinary(e,t+1);return this.extensionCodec.decode(n,r,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let e=this.view.getUint8(this.pos);return this.pos++,e}readI8(){let e=this.view.getInt8(this.pos);return this.pos++,e}readU16(){let e=this.view.getUint16(this.pos);return this.pos+=2,e}readI16(){let e=this.view.getInt16(this.pos);return this.pos+=2,e}readU32(){let e=this.view.getUint32(this.pos);return this.pos+=4,e}readI32(){let e=this.view.getInt32(this.pos);return this.pos+=4,e}readU64(){let e=(0,le.getUint64)(this.view,this.pos);return this.pos+=8,e}readI64(){let e=(0,le.getInt64)(this.view,this.pos);return this.pos+=8,e}readF32(){let e=this.view.getFloat32(this.pos);return this.pos+=4,e}readF64(){let e=this.view.getFloat64(this.pos);return this.pos+=8,e}};Q.Decoder=Fr});var Vr=S(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.decodeMulti=J.decode=J.defaultDecodeOptions=void 0;var Ts=Ht();J.defaultDecodeOptions={};function Xn(s,e=J.defaultDecodeOptions){return new Ts.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decode(s)}J.decode=Xn;function Gn(s,e=J.defaultDecodeOptions){return new Ts.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeMulti(s)}J.decodeMulti=Gn});var ks=S(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.ensureAsyncIterable=te.asyncIterableFromStream=te.isAsyncIterable=void 0;function _s(s){return s[Symbol.asyncIterator]!=null}te.isAsyncIterable=_s;function $n(s){if(s==null)throw new Error("Assertion Failure: value must not be null nor undefined")}async function*Ss(s){let e=s.getReader();try{for(;;){let{done:t,value:r}=await e.read();if(t)return;$n(r),yield r}}finally{e.releaseLock()}}te.asyncIterableFromStream=Ss;function Kn(s){return _s(s)?s:Ss(s)}te.ensureAsyncIterable=Kn});var Ds=S(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.decodeStream=H.decodeMultiStream=H.decodeArrayStream=H.decodeAsync=void 0;var Jr=Ht(),Hr=ks(),zt=Vr();async function Qn(s,e=zt.defaultDecodeOptions){let t=(0,Hr.ensureAsyncIterable)(s);return new Jr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeAsync(t)}H.decodeAsync=Qn;function Zn(s,e=zt.defaultDecodeOptions){let t=(0,Hr.ensureAsyncIterable)(s);return new Jr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeArrayStream(t)}H.decodeArrayStream=Zn;function Ms(s,e=zt.defaultDecodeOptions){let t=(0,Hr.ensureAsyncIterable)(s);return new Jr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeStream(t)}H.decodeMultiStream=Ms;function Yn(s,e=zt.defaultDecodeOptions){return Ms(s,e)}H.decodeStream=Yn});var Gt=S(h=>{"use strict";Object.defineProperty(h,"__esModule",{value:!0});h.decodeTimestampExtension=h.encodeTimestampExtension=h.decodeTimestampToTimeSpec=h.encodeTimeSpecToTimestamp=h.encodeDateToTimeSpec=h.EXT_TIMESTAMP=h.ExtData=h.ExtensionCodec=h.Encoder=h.DataViewIndexOutOfBoundsError=h.DecodeError=h.Decoder=h.decodeStream=h.decodeMultiStream=h.decodeArrayStream=h.decodeAsync=h.decodeMulti=h.decode=h.encode=void 0;var eo=xs();Object.defineProperty(h,"encode",{enumerable:!0,get:function(){return eo.encode}});var Ws=Vr();Object.defineProperty(h,"decode",{enumerable:!0,get:function(){return Ws.decode}});Object.defineProperty(h,"decodeMulti",{enumerable:!0,get:function(){return Ws.decodeMulti}});var Xt=Ds();Object.defineProperty(h,"decodeAsync",{enumerable:!0,get:function(){return Xt.decodeAsync}});Object.defineProperty(h,"decodeArrayStream",{enumerable:!0,get:function(){return Xt.decodeArrayStream}});Object.defineProperty(h,"decodeMultiStream",{enumerable:!0,get:function(){return Xt.decodeMultiStream}});Object.defineProperty(h,"decodeStream",{enumerable:!0,get:function(){return Xt.decodeStream}});var As=Ht();Object.defineProperty(h,"Decoder",{enumerable:!0,get:function(){return As.Decoder}});Object.defineProperty(h,"DataViewIndexOutOfBoundsError",{enumerable:!0,get:function(){return As.DataViewIndexOutOfBoundsError}});var to=Nt();Object.defineProperty(h,"DecodeError",{enumerable:!0,get:function(){return to.DecodeError}});var ro=Cr();Object.defineProperty(h,"Encoder",{enumerable:!0,get:function(){return ro.Encoder}});var so=Ft();Object.defineProperty(h,"ExtensionCodec",{enumerable:!0,get:function(){return so.ExtensionCodec}});var no=Ar();Object.defineProperty(h,"ExtData",{enumerable:!0,get:function(){return no.ExtData}});var xe=Or();Object.defineProperty(h,"EXT_TIMESTAMP",{enumerable:!0,get:function(){return xe.EXT_TIMESTAMP}});Object.defineProperty(h,"encodeDateToTimeSpec",{enumerable:!0,get:function(){return xe.encodeDateToTimeSpec}});Object.defineProperty(h,"encodeTimeSpecToTimestamp",{enumerable:!0,get:function(){return xe.encodeTimeSpecToTimestamp}});Object.defineProperty(h,"decodeTimestampToTimeSpec",{enumerable:!0,get:function(){return xe.decodeTimestampToTimeSpec}});Object.defineProperty(h,"encodeTimestampExtension",{enumerable:!0,get:function(){return xe.encodeTimestampExtension}});Object.defineProperty(h,"decodeTimestampExtension",{enumerable:!0,get:function(){return xe.decodeTimestampExtension}})});var Mo={};cn(Mo,{ChannelType:()=>O,Console:()=>lr,Shelter:()=>bt,WebR:()=>gt,WebRChannelError:()=>E,WebRError:()=>I,WebRPayloadError:()=>G,WebRWorkerError:()=>A,isRCall:()=>Eo,isRCharacter:()=>wo,isRComplex:()=>bo,isRDouble:()=>go,isREnvironment:()=>fo,isRFunction:()=>Yr,isRInteger:()=>mo,isRList:()=>xo,isRLogical:()=>Ro,isRNull:()=>po,isRObject:()=>x,isRPairlist:()=>yo,isRRaw:()=>vo,isRSymbol:()=>ho,isShelterID:()=>xr});module.exports=un(Mo);var I=class extends Error{constructor(e){super(e),this.name=this.constructor.name,Object.setPrototypeOf(this,new.target.prototype)}},A=class extends I{},E=class extends I{},G=class extends I{};var m=typeof process<"u"&&process.release&&process.release.name==="node",mr;if(globalThis.document)mr=s=>new Promise((e,t)=>{let r=document.createElement("script");r.src=s,r.onload=()=>e(),r.onerror=t,document.head.appendChild(r)});else if(globalThis.importScripts)mr=async s=>{try{globalThis.importScripts(s)}catch(e){if(e instanceof TypeError)await Promise.resolve().then(()=>ne(require(s)));else throw e}};else if(m)mr=async s=>{let e=(await Promise.resolve().then(()=>ne(require("path")))).default;await Promise.resolve().then(()=>ne(require(e.resolve(s))))};else throw new I("Cannot determine runtime environment");var c={};function rs(s){Object.keys(s).forEach(e=>c._free(s[e]))}var N={null:0,symbol:1,pairlist:2,closure:3,environment:4,promise:5,call:6,special:7,builtin:8,string:9,logical:10,integer:13,double:14,complex:15,character:16,dots:17,any:18,list:19,expression:20,bytecode:21,pointer:22,weakref:23,raw:24,s4:25,new:30,free:31,function:99};function gr(s){return!!s&&typeof s=="object"&&Object.keys(N).includes(s.type)}function Ue(s){return!!s&&typeof s=="object"&&"re"in s&&"im"in s}function Ce(s){return c._Rf_protect(B(s)),s}function w(s,e){return c._Rf_protect(B(s)),++e.n,s}function ss(s){let e=c._malloc(4);return c._R_ProtectWithIndex(B(s),e),{loc:c.getValue(e,"i32"),ptr:e}}function ns(s){c._Rf_unprotect(1),c._free(s.ptr)}function os(s,e){return c._R_Reprotect(B(s),e.loc),s}function T(s){c._Rf_unprotect(s)}function br(s,e,t){c._Rf_defineVar(B(e),B(t),B(s))}function wr(s,e){let t={},r={n:0};try{let n=new Ne(e);w(n,r),t.code=c.allocateUTF8(s);let o=c._R_ParseEvalString(t.code,n.ptr);return y.wrap(o)}finally{rs(t),T(r.n)}}function je(s,e){return c.getWasmTableEntry(c.GOT.ffi_safe_eval.value)(B(s),B(e))}var pn=new WeakMap;function as(s,e){return pn.set(s,e),s}function xr(s){return typeof s=="string"&&s.length===Be}var Be=63;function Et(){let s=Array.from({length:4},dn).join("-");if(s.length!==Be)throw new Error("comlink internal error: UUID has the wrong length");return s}function dn(){let s=Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16),e=15-s.length;return e>0&&(s=Array.from({length:e},()=>0).join("")+s),s}function B(s){return St(s)?s.ptr:s}function ie(s,e){if(c._TYPEOF(s.ptr)!==N[e])throw new Error(`Unexpected object type "${s.type()}" when expecting type "${e}"`)}function is(s){if(gr(s))return new(ls(s.type))(s);if(s&&typeof s=="object"&&"type"in s&&s.type==="null")return new _t;if(s===null)return new Z({type:"logical",names:null,values:[null]});if(typeof s=="boolean")return new Z(s);if(typeof s=="number")return new ye(s);if(typeof s=="string")return new L(s);if(Ue(s))return new Le(s);if(ArrayBuffer.isView(s)||s instanceof ArrayBuffer)return new Fe(s);if(Array.isArray(s))return hn(s);if(typeof s=="object")return Y.fromObject(s);throw new Error("Robj construction for this JS object is not yet supported")}function hn(s){let e={n:0};if(s.every(r=>r&&typeof r=="object"&&!St(r)&&!Ue(r))){let r=s,n=r.every(i=>Object.keys(i).filter(l=>!Object.keys(r[0]).includes(l)).length===0&&Object.keys(r[0]).filter(l=>!Object.keys(i).includes(l)).length===0),o=r.every(i=>Object.values(i).every(l=>us(l)||cs(l)));if(n&&o)return Y.fromD3(r)}if(s.every(r=>typeof r=="boolean"||r===null))return new Z(s);if(s.every(r=>typeof r=="number"||r===null))return new ye(s);if(s.every(r=>typeof r=="string"||r===null))return new L(s);try{let r=new F([new U("c"),...s]);return w(r,e),r.eval()}finally{T(e.n)}}var v=class{constructor(e){this.ptr=e}type(){let e=c._TYPEOF(this.ptr);return Object.keys(N).find(r=>N[r]===e)}},fe,Pt,oe=class extends v{constructor(t){if(!(t instanceof v))return is(t);super(t.ptr);u(this,fe)}static wrap(t){let r=c._TYPEOF(t),n=Object.keys(N)[Object.values(N).indexOf(r)];return new(ls(n))(new v(t))}get[Symbol.toStringTag](){return`RObject:${this.type()}`}static getPersistentObject(t){return k[t]}getPropertyValue(t){return this[t]}inspect(){wr(".Internal(inspect(x))",{x:this})}isNull(){return c._TYPEOF(this.ptr)===N.null}isNa(){try{let t=wr("is.na(x)",{x:this});return Ce(t),t.toBoolean()}finally{T(1)}}isUnbound(){return this.ptr===k.unboundValue.ptr}attrs(){return ae.wrap(c._ATTRIB(this.ptr))}class(){let t={n:0},r=new F([new U("class"),this]);w(r,t);try{return r.eval()}finally{T(t.n)}}setNames(t){let r;if(t===null)r=k.null;else if(Array.isArray(t)&&t.every(n=>typeof n=="string"||n===null))r=new L(t);else throw new Error("Argument to setNames must be null or an Array of strings or null");return c._Rf_setAttrib(this.ptr,k.namesSymbol.ptr,r.ptr),this}names(){let t=L.wrap(c._Rf_getAttrib(this.ptr,k.namesSymbol.ptr));return t.isNull()?null:t.toArray()}includes(t){let r=this.names();return r&&r.includes(t)}toJs(t={depth:0},r=1){throw new Error("This R object cannot be converted to JS")}subset(t){return P(this,fe,Pt).call(this,t,k.bracketSymbol.ptr)}get(t){return P(this,fe,Pt).call(this,t,k.bracket2Symbol.ptr)}getDollar(t){return P(this,fe,Pt).call(this,t,k.dollarSymbol.ptr)}pluck(...t){let r=ss(k.null);try{let n=(i,l)=>{let p=i.get(l);return os(p,r)},o=t.reduce(n,this);return o.isNull()?void 0:o}finally{ns(r)}}set(t,r){let n={n:0};try{let o=new oe(t);w(o,n);let i=new oe(r);w(i,n);let l=new U("[[<-"),p=c._Rf_lang4(l.ptr,this.ptr,o.ptr,i.ptr);return w(p,n),oe.wrap(je(p,k.baseEnv))}finally{T(n.n)}}static getMethods(t){let r=new Set,n=t;do Object.getOwnPropertyNames(n).map(o=>r.add(o));while(n=Object.getPrototypeOf(n));return[...r.keys()].filter(o=>typeof t[o]=="function")}},y=oe;fe=new WeakSet,Pt=function(t,r){let n={n:0};try{let o=new oe(t);w(o,n);let i=c._Rf_lang3(r,this.ptr,o.ptr);return w(i,n),oe.wrap(je(i,k.baseEnv))}finally{T(n.n)}};var _t=class extends y{constructor(){return super(new v(c.getValue(c._R_NilValue,"*"))),this}toJs(){return{type:"null"}}},U=class extends y{constructor(e){if(e instanceof v){ie(e,"symbol"),super(e);return}let t=c.allocateUTF8(e);try{super(new v(c._Rf_install(t)))}finally{c._free(t)}}toJs(){let e=this.toObject();return{type:"symbol",printname:e.printname,symvalue:e.symvalue,internal:e.internal}}toObject(){return{printname:this.printname().isUnbound()?null:this.printname().toString(),symvalue:this.symvalue().isUnbound()?null:this.symvalue().ptr,internal:this.internal().isNull()?null:this.internal().ptr}}toString(){return this.printname().toString()}printname(){return Ve.wrap(c._PRINTNAME(this.ptr))}symvalue(){return y.wrap(c._SYMVALUE(this.ptr))}internal(){return y.wrap(c._INTERNAL(this.ptr))}},ae=class extends y{constructor(e){if(e instanceof v)return ie(e,"pairlist"),super(e),this;let t={n:0};try{let{names:r,values:n}=Re(e),o=ae.wrap(c._Rf_allocList(n.length));w(o,t);for(let[i,l]=[0,o];!l.isNull();[i,l]=[i+1,l.cdr()])l.setcar(new y(n[i]));o.setNames(r),super(o)}finally{T(t.n)}}get length(){return this.toArray().length}toArray(e={depth:1}){return this.toJs(e).values}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1,depth:r=-1}={}){let n=this.entries({depth:r}),o=n.map(([i])=>i);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting pairlist without allowDuplicateKey enabled");if(!t&&o.some(i=>!i))throw new Error("Empty or null key when converting pairlist without allowEmptyKey enabled");return Object.fromEntries(n.filter((i,l)=>n.findIndex(p=>p[0]===i[0])===l))}entries(e={depth:1}){let t=this.toJs(e);return t.values.map((r,n)=>[t.names?t.names[n]:null,r])}toJs(e={depth:0},t=1){let r=[],n=!1,o=[];for(let l=this;!l.isNull();l=l.cdr()){let p=l.tag();p.isNull()?r.push(""):(n=!0,r.push(p.toString())),e.depth&&t>=e.depth?o.push(l.car()):o.push(l.car().toJs(e,t+1))}return{type:"pairlist",names:n?r:null,values:o}}includes(e){return e in this.toObject()}setcar(e){c._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(c._CAR(this.ptr))}cdr(){return y.wrap(c._CDR(this.ptr))}tag(){return y.wrap(c._TAG(this.ptr))}},F=class extends y{constructor(e){if(e instanceof v)return ie(e,"call"),super(e),this;let t={n:0};try{let{values:r}=Re(e),n=r.map(i=>w(new y(i),t)),o=F.wrap(c._Rf_allocVector(N.call,r.length));w(o,t);for(let[i,l]=[0,o];!l.isNull();[i,l]=[i+1,l.cdr()])l.setcar(n[i]);super(o)}finally{T(t.n)}}setcar(e){c._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(c._CAR(this.ptr))}cdr(){return y.wrap(c._CDR(this.ptr))}eval(){return c.webr.evalR(this,{env:k.baseEnv})}capture(e={}){return c.webr.captureR(this,e)}deparse(){let e={n:0};try{let t=c._Rf_lang2(new U("deparse1").ptr,c._Rf_lang2(new U("quote").ptr,this.ptr));w(t,e);let r=L.wrap(je(t,k.baseEnv));return w(r,e),r.toString()}finally{T(e.n)}}},qe=class extends y{constructor(e,t=null){if(e instanceof v){if(ie(e,"list"),super(e),t){if(t.length!==this.length)throw new Error("Can't construct named `RList`. Supplied `names` must be the same length as the list.");this.setNames(t)}return this}let r={n:0};try{let n=Re(e),o=c._Rf_allocVector(N.list,n.values.length);w(o,r),n.values.forEach((l,p)=>{c._SET_VECTOR_ELT(o,p,new y(l).ptr)});let i=t||n.names;if(i&&i.length!==n.values.length)throw new Error("Can't construct named `RList`. Supplied `names` must be the same length as the list.");y.wrap(o).setNames(i),super(new v(o))}finally{T(r.n)}}get length(){return c._LENGTH(this.ptr)}isDataFrame(){let e=ae.wrap(c._ATTRIB(this.ptr)).get("class");return!e.isNull()&&e.toArray().includes("data.frame")}toArray(e={depth:1}){return this.toJs(e).values}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1,depth:r=-1}={}){let n=this.entries({depth:r}),o=n.map(([i])=>i);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting list without allowDuplicateKey enabled");if(!t&&o.some(i=>!i))throw new Error("Empty or null key when converting list without allowEmptyKey enabled");return Object.fromEntries(n.filter((i,l)=>n.findIndex(p=>p[0]===i[0])===l))}toD3(){if(!this.isDataFrame())throw new Error("Can't convert R list object to D3 format. Object must be of class 'data.frame'.");return this.entries().reduce((t,r)=>(r[1].forEach((n,o)=>t[o]=Object.assign(t[o]||{},{[r[0]]:n})),t),[])}entries(e={depth:-1}){let t=this.toJs(e);return this.isDataFrame()&&e.depth<0&&(t.values=t.values.map(r=>r.toArray())),t.values.map((r,n)=>[t.names?t.names[n]:null,r])}toJs(e={depth:0},t=1){return{type:"list",names:this.names(),values:[...Array(this.length).keys()].map(r=>e.depth&&t>=e.depth?this.get(r+1):this.get(r+1).toJs(e,t+1))}}},Y=class extends qe{constructor(e){if(e instanceof v){if(super(e),!this.isDataFrame())throw new Error("Can't construct `RDataFrame`. Supplied R object is not a `data.frame`.");return this}return Y.fromObject(e)}static fromObject(e){let{names:t,values:r}=Re(e),n={n:0};try{let o=!!t&&t.length>0&&t.every(l=>l),i=r.length>0&&r.every(l=>Array.isArray(l)||ArrayBuffer.isView(l)||l instanceof ArrayBuffer);if(o&&i){let l=r,p=l.every(b=>b.length===l[0].length),D=l.every(b=>us(b[0])||cs(b[0]));if(p&&D){let b=new qe({type:"list",names:t,values:l.map(rn=>is(rn))});w(b,n);let j=new F([new U("as.data.frame"),b]);return w(j,n),new Y(j.eval())}}}finally{T(n.n)}throw new Error("Can't construct `data.frame`. Source object is not eligible.")}static fromD3(e){return this.fromObject(Object.fromEntries(Object.keys(e[0]).map(t=>[t,e.map(r=>r[t])])))}},he=class extends y{exec(...e){let t={n:0};try{let r=new F([this,...e]);return w(r,t),r.eval()}finally{T(t.n)}}capture(e={},...t){let r={n:0};try{let n=new F([this,...t]);return w(n,r),n.capture(e)}finally{T(r.n)}}},Ve=class extends y{constructor(e){if(e instanceof v){ie(e,"string"),super(e);return}let t=c.allocateUTF8(e);try{super(new v(c._Rf_mkChar(t)))}finally{c._free(t)}}toString(){return c.UTF8ToString(c._R_CHAR(this.ptr))}toJs(){return{type:"string",value:this.toString()}}},Ne=class extends y{constructor(e={}){if(e instanceof v)return ie(e,"environment"),super(e),this;let t=0;try{let{names:r,values:n}=Re(e),o=Ce(c._R_NewEnv(k.globalEnv.ptr,0,0));++t,n.forEach((i,l)=>{let p=r?r[l]:null;if(!p)throw new Error("Can't create object in new environment with empty symbol name");let D=new U(p),b=Ce(new y(i));try{br(o,D,b)}finally{T(1)}}),super(new v(o))}finally{T(t)}}ls(e=!1,t=!0){return L.wrap(c._R_lsInternal3(this.ptr,Number(e),Number(t))).toArray()}bind(e,t){let r=new U(e),n=Ce(new y(t));try{br(this,r,n)}finally{T(1)}}names(){return this.ls(!0,!0)}frame(){return y.wrap(c._FRAME(this.ptr))}subset(e){if(typeof e=="number")throw new Error("Object of type environment is not subsettable");return this.getDollar(e)}toObject({depth:e=-1}={}){let t=this.names();return Object.fromEntries([...Array(t.length).keys()].map(r=>{let n=this.getDollar(t[r]);return[t[r],e<0?n:n.toJs({depth:e})]}))}toJs(e={depth:0},t=1){let r=this.names(),n=[...Array(r.length).keys()].map(o=>e.depth&&t>=e.depth?this.getDollar(r[o]):this.getDollar(r[o]).toJs(e,t+1));return{type:"environment",names:r,values:n}}},ee=class extends y{constructor(e,t,r){if(e instanceof v)return ie(e,t),super(e),this;let n={n:0};try{let{names:o,values:i}=Re(e),l=c._Rf_allocVector(N[t],i.length);w(l,n),i.forEach(r(l)),y.wrap(l).setNames(o),super(new v(l))}finally{T(n.n)}}get length(){return c._LENGTH(this.ptr)}get(e){return super.get(e)}subset(e){return super.subset(e)}getDollar(){throw new Error("$ operator is invalid for atomic vectors")}detectMissing(){let e={n:0};try{let t=c._Rf_lang2(new U("is.na").ptr,this.ptr);w(t,e);let r=Z.wrap(je(t,k.baseEnv));w(r,e);let n=r.toTypedArray();return Array.from(n).map(o=>!!o)}finally{T(e.n)}}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,r)=>t?null:e[r])}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1}={}){let r=this.entries(),n=r.map(([o])=>o);if(!e&&new Set(n).size!==n.length)throw new Error("Duplicate key when converting atomic vector without allowDuplicateKey enabled");if(!t&&n.some(o=>!o))throw new Error("Empty or null key when converting atomic vector without allowEmptyKey enabled");return Object.fromEntries(r.filter((o,i)=>r.findIndex(l=>l[0]===o[0])===i))}entries(){let e=this.toArray(),t=this.names();return e.map((r,n)=>[t?t[n]:null,r])}toJs(){return{type:this.type(),names:this.names(),values:this.toArray()}}},kt,vr=class extends ee{constructor(e){super(e,"logical",a(vr,kt))}getBoolean(e){return this.get(e).toArray()[0]}toBoolean(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getBoolean(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS boolean");return e}toTypedArray(){return new Int32Array(c.HEAP32.subarray(c._LOGICAL(this.ptr)/4,c._LOGICAL(this.ptr)/4+this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,r)=>t?null:!!e[r])}},Z=vr;kt=new WeakMap,u(Z,kt,e=>{let t=c._LOGICAL(e),r=c.getValue(c._R_NaInt,"i32");return(n,o)=>{c.setValue(t+4*o,n===null?r:!!n,"i32")}});var Mt,Er=class extends ee{constructor(e){super(e,"integer",a(Er,Mt))}getNumber(e){return this.get(e).toArray()[0]}toNumber(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getNumber(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS number");return e}toTypedArray(){return new Int32Array(c.HEAP32.subarray(c._INTEGER(this.ptr)/4,c._INTEGER(this.ptr)/4+this.length))}},Tt=Er;Mt=new WeakMap,u(Tt,Mt,e=>{let t=c._INTEGER(e),r=c.getValue(c._R_NaInt,"i32");return(n,o)=>{c.setValue(t+4*o,n===null?r:Math.round(Number(n)),"i32")}});var Dt,Pr=class extends ee{constructor(e){super(e,"double",a(Pr,Dt))}getNumber(e){return this.get(e).toArray()[0]}toNumber(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getNumber(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS number");return e}toTypedArray(){return new Float64Array(c.HEAPF64.subarray(c._REAL(this.ptr)/8,c._REAL(this.ptr)/8+this.length))}},ye=Pr;Dt=new WeakMap,u(ye,Dt,e=>{let t=c._REAL(e),r=c.getValue(c._R_NaReal,"double");return(n,o)=>{c.setValue(t+8*o,n===null?r:n,"double")}});var Wt,Tr=class extends ee{constructor(e){super(e,"complex",a(Tr,Wt))}getComplex(e){return this.get(e).toArray()[0]}toComplex(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getComplex(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS object");return e}toTypedArray(){return new Float64Array(c.HEAPF64.subarray(c._COMPLEX(this.ptr)/8,c._COMPLEX(this.ptr)/8+2*this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,r)=>t?null:{re:e[2*r],im:e[2*r+1]})}},Le=Tr;Wt=new WeakMap,u(Le,Wt,e=>{let t=c._COMPLEX(e),r=c.getValue(c._R_NaReal,"double");return(n,o)=>{c.setValue(t+8*(2*o),n===null?r:n.re,"double"),c.setValue(t+8*(2*o+1),n===null?r:n.im,"double")}});var At,_r=class extends ee{constructor(e){super(e,"character",a(_r,At))}getString(e){return this.get(e).toArray()[0]}toString(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getString(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS string");return e}toTypedArray(){return new Uint32Array(c.HEAPU32.subarray(c._STRING_PTR(this.ptr)/4,c._STRING_PTR(this.ptr)/4+this.length))}toArray(){return this.detectMissing().map((e,t)=>e?null:c.UTF8ToString(c._R_CHAR(c._STRING_ELT(this.ptr,t))))}},L=_r;At=new WeakMap,u(L,At,e=>(t,r)=>{t===null?c._SET_STRING_ELT(e,r,k.naString.ptr):c._SET_STRING_ELT(e,r,new Ve(t).ptr)});var Ot,Sr=class extends ee{constructor(e){e instanceof ArrayBuffer&&(e=new Uint8Array(e)),super(e,"raw",a(Sr,Ot))}getNumber(e){return this.get(e).toArray()[0]}toNumber(){if(this.length!==1)throw new Error("Can't convert atomic vector of length > 1 to a scalar JS value");let e=this.getNumber(1);if(e===null)throw new Error("Can't convert missing value `NA` to a JS number");return e}toTypedArray(){return new Uint8Array(c.HEAPU8.subarray(c._RAW(this.ptr),c._RAW(this.ptr)+this.length))}},Fe=Sr;Ot=new WeakMap,u(Fe,Ot,e=>{let t=c._RAW(e);return(r,n)=>{c.setValue(t+n,Number(r),"i8")}});function Re(s){return gr(s)?s:Array.isArray(s)||ArrayBuffer.isView(s)?{names:null,values:s}:s&&typeof s=="object"&&!Ue(s)?{names:Object.keys(s),values:Object.values(s)}:{names:null,values:[s]}}function ls(s){let e={object:y,null:_t,symbol:U,pairlist:ae,closure:he,environment:Ne,call:F,special:he,builtin:he,string:Ve,logical:Z,integer:Tt,double:ye,complex:Le,character:L,list:qe,raw:Fe,function:he,dataframe:Y};return s in e?e[s]:y}function St(s){return s instanceof y}function cs(s){let e=["logical","integer","double","complex","character"];return St(s)&&e.includes(s.type())||St(s)&&s.isNa()}function us(s){return s===null||typeof s=="number"||typeof s=="boolean"||typeof s=="string"||Ue(s)}var k;function $(){let s={resolve:()=>{},reject:()=>{},promise:Promise.resolve()},e=new Promise((t,r)=>{s.resolve=t,s.reject=r});return s.promise=e,s}function ps(s){return new Promise(e=>setTimeout(e,s))}function q(s,e,t,...r){return s==null||fn(s)?s:s instanceof ArrayBuffer?new Uint8Array(s):e(s)?t(s,...r):Array.isArray(s)||ArrayBuffer.isView(s)?s.map(n=>q(n,e,t,...r)):s instanceof v?s:typeof s=="object"?Object.fromEntries(Object.entries(s).map(([n,o])=>[n,q(o,e,t,...r)])):s}function me(s,e){let t=new XMLHttpRequest;t.open("get",s,!0),t.onload=()=>{let r=new Worker(URL.createObjectURL(new Blob([t.responseText])));e(r)},t.send()}function ge(s){if(m)return!1;let e=new URL(location.href),t=new URL(s,location.origin);return!(e.host===t.host&&e.port===t.port&&e.protocol===t.protocol)}function fn(s){return typeof ImageBitmap<"u"&&s instanceof ImageBitmap}var Is=ne(Gt());var oo=new TextEncoder;async function Us(s,e,t){try{let{taskId:r,sizeBuffer:n,dataBuffer:o,signalBuffer:i}=e,l=(0,Is.encode)(t),p=l.length<=o.length;if(Atomics.store(n,0,l.length),Atomics.store(n,1,+p),!p){let[D,b]=ao(s);o.set(oo.encode(D)),await Os(i,r),o=(await b).dataBuffer}o.set(l),Atomics.store(n,1,1),await Os(i,r)}catch(r){console.warn(r)}}function ao(s){let e=Et();return[e,new Promise(t=>{m?s.once("message",r=>{!r.id||r.id!==e||t(r)}):s.addEventListener("message",function r(n){!n.data||!n.data.id||n.data.id!==e||(s.removeEventListener("message",r),t(n.data))}),s.start&&s.start()})]}async function Os(s,e){let t=(e>>1)%32,r=1;for(;Atomics.compareExchange(s,t+1,0,e)!==0;)await ps(r),r<32&&(r*=2);Atomics.or(s,0,1<<t),Atomics.notify(s,0)}var z,X,$e,zr,ve=class{constructor(){u(this,$e);u(this,z,void 0);u(this,X,void 0);d(this,X,[]),d(this,z,[])}reset(){d(this,X,[]),d(this,z,[])}put(e){a(this,X).length||P(this,$e,zr).call(this),a(this,X).shift()(e)}async get(){return a(this,z).length||P(this,$e,zr).call(this),a(this,z).shift()}isEmpty(){return!a(this,z).length}isBlocked(){return!!a(this,X).length}get length(){return a(this,z).length-a(this,X).length}};z=new WeakMap,X=new WeakMap,$e=new WeakSet,zr=function(){a(this,z).push(new Promise(e=>{a(this,X).push(e)}))};function Ee(s,e){return Cs({type:"request",data:{uuid:Et(),msg:s}},e)}function Ke(s,e,t){return Cs({type:"response",data:{uuid:s,resp:e}},t)}function Cs(s,e){return e&&as(s,e),s}function js(s,e){return{type:"sync-request",data:{msg:s,reqData:e}}}function Ns(s){let e=new A(s.obj.message);return s.obj.name!=="Error"&&(e.name=s.obj.name),e.stack=s.obj.stack,e}function io(s){return!!s&&typeof s=="object"&&"payloadType"in s&&"obj"in s}function Qt(s){return io(s)&&s.payloadType==="ptr"}var Pe,Qe,re=class{constructor(){this.inputQueue=new ve;this.outputQueue=new ve;this.systemQueue=new ve;u(this,Pe,new Map);u(this,Qe,!1)}async read(){return await this.outputQueue.get()}async flush(){let e=[];for(;!this.outputQueue.isEmpty();)e.push(await this.read());return e}async readSystem(){return await this.systemQueue.get()}write(e){if(a(this,Qe))throw new E("The webR communication channel has been closed.");this.inputQueue.put(e)}async request(e,t){let r=Ee(e,t),{resolve:n,reject:o,promise:i}=$();return a(this,Pe).set(r.data.uuid,{resolve:n,reject:o}),this.write(r),i}putClosedMessage(){d(this,Qe,!0),this.outputQueue.put({type:"closed"})}resolveResponse(e){let t=e.data.uuid,r=a(this,Pe).get(t);if(r){let n=e.data.resp;a(this,Pe).delete(t),n.payloadType==="err"?r.reject(Ns(n)):r.resolve(n)}else console.warn("Can't find request.")}};Pe=new WeakMap,Qe=new WeakMap;var Ls=ne(Gt());var co=new TextDecoder("utf-8"),Te,_e,Ze,Ye,Se,Yt=class{constructor(e,t,r=[]){u(this,Te,!1);u(this,_e,void 0);u(this,Ze,void 0);u(this,Ye,void 0);u(this,Se,void 0);this.syncifier=new Xr;this.endpoint=e,this.msg=t,this.transfers=r,d(this,_e,!1)}scheduleSync(){if(!a(this,Te))return d(this,Te,!0),this.syncifier.scheduleTask(this),d(this,Se,this.doSync()),a(this,Se).next(),this}poll(){if(!a(this,Te))throw new Error("Task not synchronously scheduled");let{done:e,value:t}=a(this,Se).next();return e?(d(this,_e,!0),d(this,Ze,t)