@r-universe/webr 2023.6.21 → 2023.9.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/dist/R.bin.data +3934 -2174
  2. package/dist/R.bin.js +1 -6
  3. package/dist/R.bin.wasm +0 -0
  4. package/dist/repl/App.d.ts +15 -0
  5. package/dist/repl/components/Editor.d.ts +26 -0
  6. package/dist/repl/components/Files.d.ts +19 -0
  7. package/dist/repl/components/Plot.d.ts +7 -0
  8. package/dist/repl/components/Terminal.d.ts +9 -0
  9. package/dist/repl/components/utils.d.ts +11 -0
  10. package/dist/tests/webR/chan/channel-postmessage.test.d.ts +1 -0
  11. package/dist/tests/webR/error.test.d.ts +1 -0
  12. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-Bold.afm.gz +0 -0
  13. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-BoldItalic.afm.gz +0 -0
  14. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT-Italic.afm.gz +0 -0
  15. package/dist/vfs/usr/lib/R/library/grDevices/afm/ArialMT.afm.gz +0 -0
  16. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_boldx_10.afm.gz +0 -0
  17. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_boldx_italic_10.afm.gz +0 -0
  18. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_italic_10.afm.gz +0 -0
  19. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_regular_10.afm.gz +0 -0
  20. package/dist/vfs/usr/lib/R/library/grDevices/afm/CM_symbol_10.afm.gz +0 -0
  21. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-Bold.afm.gz +0 -0
  22. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-BoldOblique.afm.gz +0 -0
  23. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier-Oblique.afm.gz +0 -0
  24. package/dist/vfs/usr/lib/R/library/grDevices/afm/Courier.afm.gz +0 -0
  25. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-Bold.afm.gz +0 -0
  26. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-BoldOblique.afm.gz +0 -0
  27. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica-Oblique.afm.gz +0 -0
  28. package/dist/vfs/usr/lib/R/library/grDevices/afm/Helvetica.afm.gz +0 -0
  29. package/dist/vfs/usr/lib/R/library/grDevices/afm/Symbol.afm.gz +0 -0
  30. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Bold.afm.gz +0 -0
  31. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-BoldItalic.afm.gz +0 -0
  32. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Italic.afm.gz +0 -0
  33. package/dist/vfs/usr/lib/R/library/grDevices/afm/Times-Roman.afm.gz +0 -0
  34. package/dist/vfs/usr/lib/R/library/grDevices/afm/ZapfDingbats.afm.gz +0 -0
  35. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010013l.afm.gz +0 -0
  36. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010015l.afm.gz +0 -0
  37. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010033l.afm.gz +0 -0
  38. package/dist/vfs/usr/lib/R/library/grDevices/afm/a010035l.afm.gz +0 -0
  39. package/dist/vfs/usr/lib/R/library/grDevices/afm/agd_____.afm.gz +0 -0
  40. package/dist/vfs/usr/lib/R/library/grDevices/afm/agdo____.afm.gz +0 -0
  41. package/dist/vfs/usr/lib/R/library/grDevices/afm/agw_____.afm.gz +0 -0
  42. package/dist/vfs/usr/lib/R/library/grDevices/afm/agwo____.afm.gz +0 -0
  43. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018012l.afm.gz +0 -0
  44. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018015l.afm.gz +0 -0
  45. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018032l.afm.gz +0 -0
  46. package/dist/vfs/usr/lib/R/library/grDevices/afm/b018035l.afm.gz +0 -0
  47. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkd_____.afm.gz +0 -0
  48. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkdi____.afm.gz +0 -0
  49. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkl_____.afm.gz +0 -0
  50. package/dist/vfs/usr/lib/R/library/grDevices/afm/bkli____.afm.gz +0 -0
  51. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059013l.afm.gz +0 -0
  52. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059016l.afm.gz +0 -0
  53. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059033l.afm.gz +0 -0
  54. package/dist/vfs/usr/lib/R/library/grDevices/afm/c059036l.afm.gz +0 -0
  55. package/dist/vfs/usr/lib/R/library/grDevices/afm/cmbxti10.afm.gz +0 -0
  56. package/dist/vfs/usr/lib/R/library/grDevices/afm/cmti10.afm.gz +0 -0
  57. package/dist/vfs/usr/lib/R/library/grDevices/afm/cob_____.afm.gz +0 -0
  58. package/dist/vfs/usr/lib/R/library/grDevices/afm/cobo____.afm.gz +0 -0
  59. package/dist/vfs/usr/lib/R/library/grDevices/afm/com_____.afm.gz +0 -0
  60. package/dist/vfs/usr/lib/R/library/grDevices/afm/coo_____.afm.gz +0 -0
  61. package/dist/vfs/usr/lib/R/library/grDevices/afm/hv______.afm.gz +0 -0
  62. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvb_____.afm.gz +0 -0
  63. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvbo____.afm.gz +0 -0
  64. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvn_____.afm.gz +0 -0
  65. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvnb____.afm.gz +0 -0
  66. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvnbo___.afm.gz +0 -0
  67. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvno____.afm.gz +0 -0
  68. package/dist/vfs/usr/lib/R/library/grDevices/afm/hvo_____.afm.gz +0 -0
  69. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019003l.afm.gz +0 -0
  70. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019004l.afm.gz +0 -0
  71. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019023l.afm.gz +0 -0
  72. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019024l.afm.gz +0 -0
  73. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019043l.afm.gz +0 -0
  74. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019044l.afm.gz +0 -0
  75. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019063l.afm.gz +0 -0
  76. package/dist/vfs/usr/lib/R/library/grDevices/afm/n019064l.afm.gz +0 -0
  77. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021003l.afm.gz +0 -0
  78. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021004l.afm.gz +0 -0
  79. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021023l.afm.gz +0 -0
  80. package/dist/vfs/usr/lib/R/library/grDevices/afm/n021024l.afm.gz +0 -0
  81. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022003l.afm.gz +0 -0
  82. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022004l.afm.gz +0 -0
  83. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022023l.afm.gz +0 -0
  84. package/dist/vfs/usr/lib/R/library/grDevices/afm/n022024l.afm.gz +0 -0
  85. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncb_____.afm.gz +0 -0
  86. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncbi____.afm.gz +0 -0
  87. package/dist/vfs/usr/lib/R/library/grDevices/afm/nci_____.afm.gz +0 -0
  88. package/dist/vfs/usr/lib/R/library/grDevices/afm/ncr_____.afm.gz +0 -0
  89. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052003l.afm.gz +0 -0
  90. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052004l.afm.gz +0 -0
  91. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052023l.afm.gz +0 -0
  92. package/dist/vfs/usr/lib/R/library/grDevices/afm/p052024l.afm.gz +0 -0
  93. package/dist/vfs/usr/lib/R/library/grDevices/afm/pob_____.afm.gz +0 -0
  94. package/dist/vfs/usr/lib/R/library/grDevices/afm/pobi____.afm.gz +0 -0
  95. package/dist/vfs/usr/lib/R/library/grDevices/afm/poi_____.afm.gz +0 -0
  96. package/dist/vfs/usr/lib/R/library/grDevices/afm/por_____.afm.gz +0 -0
  97. package/dist/vfs/usr/lib/R/library/grDevices/afm/s050000l.afm.gz +0 -0
  98. package/dist/vfs/usr/lib/R/library/grDevices/afm/sy______.afm.gz +0 -0
  99. package/dist/vfs/usr/lib/R/library/grDevices/afm/tib_____.afm.gz +0 -0
  100. package/dist/vfs/usr/lib/R/library/grDevices/afm/tibi____.afm.gz +0 -0
  101. package/dist/vfs/usr/lib/R/library/grDevices/afm/tii_____.afm.gz +0 -0
  102. package/dist/vfs/usr/lib/R/library/grDevices/afm/tir_____.afm.gz +0 -0
  103. package/dist/vfs/usr/lib/R/library/parallel/DESCRIPTION +1 -1
  104. package/dist/vfs/usr/lib/R/library/parallel/Meta/package.rds +0 -0
  105. package/dist/vfs/usr/lib/R/library/tcltk/DESCRIPTION +1 -1
  106. package/dist/vfs/usr/lib/R/library/tcltk/Meta/package.rds +0 -0
  107. package/dist/vfs/usr/lib/R/library/tools/help/tools.rdb +0 -0
  108. package/dist/vfs/usr/lib/R/library/translations/Meta/package.rds +0 -0
  109. package/dist/webR/chan/channel-common.d.ts +4 -2
  110. package/dist/webR/chan/channel-postmessage.d.ts +26 -0
  111. package/dist/webR/chan/channel-shared.d.ts +1 -0
  112. package/dist/webR/chan/channel.d.ts +1 -0
  113. package/dist/webR/console.d.ts +6 -2
  114. package/dist/webR/emscripten.d.ts +7 -0
  115. package/dist/webR/error.d.ts +26 -0
  116. package/dist/webR/payload.d.ts +1 -1
  117. package/dist/webR/webr-chan.d.ts +18 -0
  118. package/dist/webR/webr-main.d.ts +7 -0
  119. package/dist/webr-serviceworker.js +14 -3
  120. package/dist/webr-serviceworker.js.map +3 -3
  121. package/dist/webr-serviceworker.mjs +14 -3
  122. package/dist/webr-serviceworker.mjs.map +3 -3
  123. package/dist/webr-worker.js +435 -175
  124. package/dist/webr-worker.js.map +4 -4
  125. package/dist/webr.cjs +3 -3
  126. package/dist/webr.cjs.map +4 -4
  127. package/dist/webr.mjs +3 -3
  128. package/dist/webr.mjs.map +4 -4
  129. package/package.json +20 -18
  130. package/dist/repl/fstree.d.ts +0 -57
  131. package/dist/repl/repl.d.ts +0 -1
  132. package/dist/vfs/usr/lib/R/library/grDevices/libs/grDevices.so +0 -0
  133. package/dist/vfs/usr/lib/R/modules/internet.so +0 -0
  134. package/dist/vfs/usr/lib/R/modules/lapack.so +0 -0
  135. package/templates/repl.html +0 -134
package/dist/webr.cjs CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var Dn=Object.create;var Ye=Object.defineProperty;var Wn=Object.getOwnPropertyDescriptor;var An=Object.getOwnPropertyNames;var Mn=Object.getPrototypeOf,On=Object.prototype.hasOwnProperty;var P=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),Un=(r,e)=>{for(var t in e)Ye(r,t,{get:e[t],enumerable:!0})},Wr=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of An(e))!On.call(r,s)&&s!==t&&Ye(r,s,{get:()=>e[s],enumerable:!(n=Wn(e,s))||n.enumerable});return r};var $=(r,e,t)=>(t=r!=null?Dn(Mn(r)):{},Wr(e||!r||!r.__esModule?Ye(t,"default",{value:r,enumerable:!0}):t,r)),In=r=>Wr(Ye({},"__esModule",{value:!0}),r);var Xt=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var i=(r,e,t)=>(Xt(r,e,"read from private field"),t?t.call(r):e.get(r)),u=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},h=(r,e,t,n)=>(Xt(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var T=(r,e,t)=>(Xt(r,e,"access private method"),t);var Ee=P(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});A.getUint64=A.getInt64=A.setInt64=A.setUint64=A.UINT32_MAX=void 0;A.UINT32_MAX=4294967295;function jn(r,e,t){let n=t/4294967296,s=t;r.setUint32(e,n),r.setUint32(e+4,s)}A.setUint64=jn;function Bn(r,e,t){let n=Math.floor(t/4294967296),s=t;r.setUint32(e,n),r.setUint32(e+4,s)}A.setInt64=Bn;function Ln(r,e){let t=r.getInt32(e),n=r.getUint32(e+4);return t*4294967296+n}A.getInt64=Ln;function Fn(r,e){let t=r.getUint32(e),n=r.getUint32(e+4);return t*4294967296+n}A.getUint64=Fn});var st=P(_=>{"use strict";var $t,Kt,Qt;Object.defineProperty(_,"__esModule",{value:!0});_.utf8DecodeTD=_.TEXT_DECODER_THRESHOLD=_.utf8DecodeJs=_.utf8EncodeTE=_.TEXT_ENCODER_THRESHOLD=_.utf8EncodeJs=_.utf8Count=void 0;var Or=Ee(),nt=(typeof process>"u"||(($t=process==null?void 0:process.env)===null||$t===void 0?void 0:$t.TEXT_ENCODING)!=="never")&&typeof TextEncoder<"u"&&typeof TextDecoder<"u";function qn(r){let e=r.length,t=0,n=0;for(;n<e;){let s=r.charCodeAt(n++);if(s&4294967168)if(!(s&4294965248))t+=2;else{if(s>=55296&&s<=56319&&n<e){let o=r.charCodeAt(n);(o&64512)===56320&&(++n,s=((s&1023)<<10)+(o&1023)+65536)}s&4294901760?t+=4:t+=3}else{t++;continue}}return t}_.utf8Count=qn;function Vn(r,e,t){let n=r.length,s=t,o=0;for(;o<n;){let a=r.charCodeAt(o++);if(a&4294967168)if(!(a&4294965248))e[s++]=a>>6&31|192;else{if(a>=55296&&a<=56319&&o<n){let c=r.charCodeAt(o);(c&64512)===56320&&(++o,a=((a&1023)<<10)+(c&1023)+65536)}a&4294901760?(e[s++]=a>>18&7|240,e[s++]=a>>12&63|128,e[s++]=a>>6&63|128):(e[s++]=a>>12&15|224,e[s++]=a>>6&63|128)}else{e[s++]=a;continue}e[s++]=a&63|128}}_.utf8EncodeJs=Vn;var Te=nt?new TextEncoder:void 0;_.TEXT_ENCODER_THRESHOLD=nt?typeof process<"u"&&((Kt=process==null?void 0:process.env)===null||Kt===void 0?void 0:Kt.TEXT_ENCODING)!=="force"?200:0:Or.UINT32_MAX;function Jn(r,e,t){e.set(Te.encode(r),t)}function Hn(r,e,t){Te.encodeInto(r,e.subarray(t))}_.utf8EncodeTE=Te!=null&&Te.encodeInto?Hn:Jn;var zn=4096;function Xn(r,e,t){let n=e,s=n+t,o=[],a="";for(;n<s;){let c=r[n++];if(!(c&128))o.push(c);else if((c&224)===192){let p=r[n++]&63;o.push((c&31)<<6|p)}else if((c&240)===224){let p=r[n++]&63,w=r[n++]&63;o.push((c&31)<<12|p<<6|w)}else if((c&248)===240){let p=r[n++]&63,w=r[n++]&63,G=r[n++]&63,q=(c&7)<<18|p<<12|w<<6|G;q>65535&&(q-=65536,o.push(q>>>10&1023|55296),q=56320|q&1023),o.push(q)}else o.push(c);o.length>=zn&&(a+=String.fromCharCode(...o),o.length=0)}return o.length>0&&(a+=String.fromCharCode(...o)),a}_.utf8DecodeJs=Xn;var Gn=nt?new TextDecoder:null;_.TEXT_DECODER_THRESHOLD=nt?typeof process<"u"&&((Qt=process==null?void 0:process.env)===null||Qt===void 0?void 0:Qt.TEXT_DECODER)!=="force"?200:0:Or.UINT32_MAX;function $n(r,e,t){let n=r.subarray(e,e+t);return Gn.decode(n)}_.utf8DecodeTD=$n});var Yt=P(ot=>{"use strict";Object.defineProperty(ot,"__esModule",{value:!0});ot.ExtData=void 0;var Zt=class{constructor(e,t){this.type=e,this.data=t}};ot.ExtData=Zt});var at=P(it=>{"use strict";Object.defineProperty(it,"__esModule",{value:!0});it.DecodeError=void 0;var ie=class extends Error{constructor(e){super(e);let t=Object.create(ie.prototype);Object.setPrototypeOf(this,t),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:ie.name})}};it.DecodeError=ie});var er=P(v=>{"use strict";Object.defineProperty(v,"__esModule",{value:!0});v.timestampExtension=v.decodeTimestampExtension=v.decodeTimestampToTimeSpec=v.encodeTimestampExtension=v.encodeDateToTimeSpec=v.encodeTimeSpecToTimestamp=v.EXT_TIMESTAMP=void 0;var Kn=at(),Ur=Ee();v.EXT_TIMESTAMP=-1;var Qn=4294967296-1,Zn=17179869184-1;function Ir({sec:r,nsec:e}){if(r>=0&&e>=0&&r<=Zn)if(e===0&&r<=Qn){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,r),t}else{let t=r/4294967296,n=r&4294967295,s=new Uint8Array(8),o=new DataView(s.buffer);return o.setUint32(0,e<<2|t&3),o.setUint32(4,n),s}else{let t=new Uint8Array(12),n=new DataView(t.buffer);return n.setUint32(0,e),(0,Ur.setInt64)(n,4,r),t}}v.encodeTimeSpecToTimestamp=Ir;function Cr(r){let e=r.getTime(),t=Math.floor(e/1e3),n=(e-t*1e3)*1e6,s=Math.floor(n/1e9);return{sec:t+s,nsec:n-s*1e9}}v.encodeDateToTimeSpec=Cr;function Nr(r){if(r instanceof Date){let e=Cr(r);return Ir(e)}else return null}v.encodeTimestampExtension=Nr;function jr(r){let e=new DataView(r.buffer,r.byteOffset,r.byteLength);switch(r.byteLength){case 4:return{sec:e.getUint32(0),nsec:0};case 8:{let t=e.getUint32(0),n=e.getUint32(4),s=(t&3)*4294967296+n,o=t>>>2;return{sec:s,nsec:o}}case 12:{let t=(0,Ur.getInt64)(e,4),n=e.getUint32(0);return{sec:t,nsec:n}}default:throw new Kn.DecodeError(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${r.length}`)}}v.decodeTimestampToTimeSpec=jr;function Br(r){let e=jr(r);return new Date(e.sec*1e3+e.nsec/1e6)}v.decodeTimestampExtension=Br;v.timestampExtension={type:v.EXT_TIMESTAMP,encode:Nr,decode:Br}});var ut=P(ct=>{"use strict";Object.defineProperty(ct,"__esModule",{value:!0});ct.ExtensionCodec=void 0;var lt=Yt(),Yn=er(),ve=class{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(Yn.timestampExtension)}register({type:e,encode:t,decode:n}){if(e>=0)this.encoders[e]=t,this.decoders[e]=n;else{let s=1+e;this.builtInEncoders[s]=t,this.builtInDecoders[s]=n}}tryToEncode(e,t){for(let n=0;n<this.builtInEncoders.length;n++){let s=this.builtInEncoders[n];if(s!=null){let o=s(e,t);if(o!=null){let a=-1-n;return new lt.ExtData(a,o)}}}for(let n=0;n<this.encoders.length;n++){let s=this.encoders[n];if(s!=null){let o=s(e,t);if(o!=null){let a=n;return new lt.ExtData(a,o)}}}return e instanceof lt.ExtData?e:null}decode(e,t,n){let s=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return s?s(e,t,n):new lt.ExtData(t,e)}};ct.ExtensionCodec=ve;ve.defaultCodec=new ve});var tr=P(ae=>{"use strict";Object.defineProperty(ae,"__esModule",{value:!0});ae.createDataView=ae.ensureUint8Array=void 0;function Lr(r){return r instanceof Uint8Array?r:ArrayBuffer.isView(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r instanceof ArrayBuffer?new Uint8Array(r):Uint8Array.from(r)}ae.ensureUint8Array=Lr;function es(r){if(r instanceof ArrayBuffer)return new DataView(r);let e=Lr(r);return new DataView(e.buffer,e.byteOffset,e.byteLength)}ae.createDataView=es});var nr=P(O=>{"use strict";Object.defineProperty(O,"__esModule",{value:!0});O.Encoder=O.DEFAULT_INITIAL_BUFFER_SIZE=O.DEFAULT_MAX_DEPTH=void 0;var Pe=st(),ts=ut(),Fr=Ee(),rs=tr();O.DEFAULT_MAX_DEPTH=100;O.DEFAULT_INITIAL_BUFFER_SIZE=2048;var rr=class{constructor(e=ts.ExtensionCodec.defaultCodec,t=void 0,n=O.DEFAULT_MAX_DEPTH,s=O.DEFAULT_INITIAL_BUFFER_SIZE,o=!1,a=!1,c=!1,p=!1){this.extensionCodec=e,this.context=t,this.maxDepth=n,this.initialBufferSize=s,this.sortKeys=o,this.forceFloat32=a,this.ignoreUndefined=c,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),n=new Uint8Array(t),s=new DataView(t);n.set(this.bytes),this.view=s,this.bytes=n}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>Pe.TEXT_ENCODER_THRESHOLD){let s=(0,Pe.utf8Count)(e);this.ensureBufferSizeToWrite(5+s),this.writeStringHeader(s),(0,Pe.utf8EncodeTE)(e,this.bytes,this.pos),this.pos+=s}else{let s=(0,Pe.utf8Count)(e);this.ensureBufferSizeToWrite(5+s),this.writeStringHeader(s),(0,Pe.utf8EncodeJs)(e,this.bytes,this.pos),this.pos+=s}}encodeObject(e,t){let n=this.extensionCodec.tryToEncode(e,this.context);if(n!=null)this.encodeExtension(n);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 n=(0,rs.ensureUint8Array)(e);this.writeU8a(n)}encodeArray(e,t){let n=e.length;if(n<16)this.writeU8(144+n);else if(n<65536)this.writeU8(220),this.writeU16(n);else if(n<4294967296)this.writeU8(221),this.writeU32(n);else throw new Error(`Too large array: ${n}`);for(let s of e)this.doEncode(s,t+1)}countWithoutUndefined(e,t){let n=0;for(let s of t)e[s]!==void 0&&n++;return n}encodeMap(e,t){let n=Object.keys(e);this.sortKeys&&n.sort();let s=this.ignoreUndefined?this.countWithoutUndefined(e,n):n.length;if(s<16)this.writeU8(128+s);else if(s<65536)this.writeU8(222),this.writeU16(s);else if(s<4294967296)this.writeU8(223),this.writeU32(s);else throw new Error(`Too large map object: ${s}`);for(let o of n){let a=e[o];this.ignoreUndefined&&a===void 0||(this.encodeString(o),this.doEncode(a,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,Fr.setUint64)(this.view,this.pos,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),(0,Fr.setInt64)(this.view,this.pos,e),this.pos+=8}};O.Encoder=rr});var qr=P(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.encode=void 0;var ns=nr(),ss={};function os(r,e=ss){return new ns.Encoder(e.extensionCodec,e.context,e.maxDepth,e.initialBufferSize,e.sortKeys,e.forceFloat32,e.ignoreUndefined,e.forceIntegerToFloat).encodeSharedRef(r)}pt.encode=os});var Vr=P(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.prettyByte=void 0;function is(r){return`${r<0?"-":""}0x${Math.abs(r).toString(16).padStart(2,"0")}`}dt.prettyByte=is});var Jr=P(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.CachedKeyDecoder=void 0;var as=st(),ls=16,cs=16,sr=class{constructor(e=ls,t=cs){this.maxKeyLength=e,this.maxLengthPerKey=t,this.hit=0,this.miss=0,this.caches=[];for(let n=0;n<this.maxKeyLength;n++)this.caches.push([])}canBeCached(e){return e>0&&e<=this.maxKeyLength}find(e,t,n){let s=this.caches[n-1];e:for(let o of s){let a=o.bytes;for(let c=0;c<n;c++)if(a[c]!==e[t+c])continue e;return o.str}return null}store(e,t){let n=this.caches[e.length-1],s={bytes:e,str:t};n.length>=this.maxLengthPerKey?n[Math.random()*n.length|0]=s:n.push(s)}decode(e,t,n){let s=this.find(e,t,n);if(s!=null)return this.hit++,s;this.miss++;let o=(0,as.utf8DecodeJs)(e,t,n),a=Uint8Array.prototype.slice.call(e,t,t+n);return this.store(a,o),o}};ht.CachedKeyDecoder=sr});var yt=P(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.Decoder=L.DataViewIndexOutOfBoundsError=void 0;var or=Vr(),us=ut(),K=Ee(),ir=st(),ar=tr(),ps=Jr(),B=at(),ds=r=>{let e=typeof r;return e==="string"||e==="number"},_e=-1,cr=new DataView(new ArrayBuffer(0)),hs=new Uint8Array(cr.buffer);L.DataViewIndexOutOfBoundsError=(()=>{try{cr.getInt8(0)}catch(r){return r.constructor}throw new Error("never reached")})();var Hr=new L.DataViewIndexOutOfBoundsError("Insufficient data"),ys=new ps.CachedKeyDecoder,lr=class{constructor(e=us.ExtensionCodec.defaultCodec,t=void 0,n=K.UINT32_MAX,s=K.UINT32_MAX,o=K.UINT32_MAX,a=K.UINT32_MAX,c=K.UINT32_MAX,p=ys){this.extensionCodec=e,this.context=t,this.maxStrLength=n,this.maxBinLength=s,this.maxArrayLength=o,this.maxMapLength=a,this.maxExtLength=c,this.keyDecoder=p,this.totalPos=0,this.pos=0,this.view=cr,this.bytes=hs,this.headByte=_e,this.stack=[]}reinitializeState(){this.totalPos=0,this.headByte=_e,this.stack.length=0}setBuffer(e){this.bytes=(0,ar.ensureUint8Array)(e),this.view=(0,ar.createDataView)(this.bytes),this.pos=0}appendBuffer(e){if(this.headByte===_e&&!this.hasRemaining(1))this.setBuffer(e);else{let t=this.bytes.subarray(this.pos),n=(0,ar.ensureUint8Array)(e),s=new Uint8Array(t.length+n.length);s.set(t),s.set(n,t.length),this.setBuffer(s)}}hasRemaining(e){return this.view.byteLength-this.pos>=e}createExtraByteError(e){let{view:t,pos:n}=this;return new RangeError(`Extra ${t.byteLength-n} 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,n;for await(let c of e){if(t)throw this.createExtraByteError(this.totalPos);this.appendBuffer(c);try{n=this.doDecodeSync(),t=!0}catch(p){if(!(p instanceof L.DataViewIndexOutOfBoundsError))throw p}this.totalPos+=this.pos}if(t){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return n}let{headByte:s,pos:o,totalPos:a}=this;throw new RangeError(`Insufficient data in parsing ${(0,or.prettyByte)(s)} at ${a} (${o} in the current buffer)`)}decodeArrayStream(e){return this.decodeMultiAsync(e,!0)}decodeStream(e){return this.decodeMultiAsync(e,!1)}async*decodeMultiAsync(e,t){let n=t,s=-1;for await(let o of e){if(t&&s===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(o),n&&(s=this.readArraySize(),n=!1,this.complete());try{for(;yield this.doDecodeSync(),--s!==0;);}catch(a){if(!(a instanceof L.DataViewIndexOutOfBoundsError))throw a}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 s=e-128;if(s!==0){this.pushMapState(s),this.complete();continue e}else t={}}else if(e<160){let s=e-144;if(s!==0){this.pushArrayState(s),this.complete();continue e}else t=[]}else{let s=e-160;t=this.decodeUtf8String(s,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 s=this.lookU8();t=this.decodeUtf8String(s,1)}else if(e===218){let s=this.lookU16();t=this.decodeUtf8String(s,2)}else if(e===219){let s=this.lookU32();t=this.decodeUtf8String(s,4)}else if(e===220){let s=this.readU16();if(s!==0){this.pushArrayState(s),this.complete();continue e}else t=[]}else if(e===221){let s=this.readU32();if(s!==0){this.pushArrayState(s),this.complete();continue e}else t=[]}else if(e===222){let s=this.readU16();if(s!==0){this.pushMapState(s),this.complete();continue e}else t={}}else if(e===223){let s=this.readU32();if(s!==0){this.pushMapState(s),this.complete();continue e}else t={}}else if(e===196){let s=this.lookU8();t=this.decodeBinary(s,1)}else if(e===197){let s=this.lookU16();t=this.decodeBinary(s,2)}else if(e===198){let s=this.lookU32();t=this.decodeBinary(s,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 s=this.lookU8();t=this.decodeExtension(s,1)}else if(e===200){let s=this.lookU16();t=this.decodeExtension(s,2)}else if(e===201){let s=this.lookU32();t=this.decodeExtension(s,4)}else throw new B.DecodeError(`Unrecognized type byte: ${(0,or.prettyByte)(e)}`);this.complete();let n=this.stack;for(;n.length>0;){let s=n[n.length-1];if(s.type===0)if(s.array[s.position]=t,s.position++,s.position===s.size)n.pop(),t=s.array;else continue e;else if(s.type===1){if(!ds(t))throw new B.DecodeError("The type of key must be string or number but "+typeof t);if(t==="__proto__")throw new B.DecodeError("The key __proto__ is not allowed");s.key=t,s.type=2;continue e}else if(s.map[s.key]=t,s.readCount++,s.readCount===s.size)n.pop(),t=s.map;else{s.key=null,s.type=1;continue e}}return t}}readHeadByte(){return this.headByte===_e&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=_e}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 B.DecodeError(`Unrecognized array type byte: ${(0,or.prettyByte)(e)}`)}}}pushMapState(e){if(e>this.maxMapLength)throw new B.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 B.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 n;if(e>this.maxStrLength)throw new B.DecodeError(`Max length exceeded: UTF-8 byte length (${e}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+t+e)throw Hr;let s=this.pos+t,o;return this.stateIsMapKey()&&(!((n=this.keyDecoder)===null||n===void 0)&&n.canBeCached(e))?o=this.keyDecoder.decode(this.bytes,s,e):e>ir.TEXT_DECODER_THRESHOLD?o=(0,ir.utf8DecodeTD)(this.bytes,s,e):o=(0,ir.utf8DecodeJs)(this.bytes,s,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 B.DecodeError(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+t))throw Hr;let n=this.pos+t,s=this.bytes.subarray(n,n+e);return this.pos+=t+e,s}decodeExtension(e,t){if(e>this.maxExtLength)throw new B.DecodeError(`Max length exceeded: ext length (${e}) > maxExtLength (${this.maxExtLength})`);let n=this.view.getInt8(this.pos+t),s=this.decodeBinary(e,t+1);return this.extensionCodec.decode(s,n,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,K.getUint64)(this.view,this.pos);return this.pos+=8,e}readI64(){let e=(0,K.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}};L.Decoder=lr});var ur=P(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.decodeMulti=U.decode=U.defaultDecodeOptions=void 0;var zr=yt();U.defaultDecodeOptions={};function fs(r,e=U.defaultDecodeOptions){return new zr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decode(r)}U.decode=fs;function Rs(r,e=U.defaultDecodeOptions){return new zr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeMulti(r)}U.decodeMulti=Rs});var $r=P(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.ensureAsyncIterable=V.asyncIterableFromStream=V.isAsyncIterable=void 0;function Xr(r){return r[Symbol.asyncIterator]!=null}V.isAsyncIterable=Xr;function ms(r){if(r==null)throw new Error("Assertion Failure: value must not be null nor undefined")}async function*Gr(r){let e=r.getReader();try{for(;;){let{done:t,value:n}=await e.read();if(t)return;ms(n),yield n}}finally{e.releaseLock()}}V.asyncIterableFromStream=Gr;function gs(r){return Xr(r)?r:Gr(r)}V.ensureAsyncIterable=gs});var Qr=P(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.decodeStream=I.decodeMultiStream=I.decodeArrayStream=I.decodeAsync=void 0;var pr=yt(),dr=$r(),ft=ur();async function bs(r,e=ft.defaultDecodeOptions){let t=(0,dr.ensureAsyncIterable)(r);return new pr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeAsync(t)}I.decodeAsync=bs;function ws(r,e=ft.defaultDecodeOptions){let t=(0,dr.ensureAsyncIterable)(r);return new pr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeArrayStream(t)}I.decodeArrayStream=ws;function Kr(r,e=ft.defaultDecodeOptions){let t=(0,dr.ensureAsyncIterable)(r);return new pr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeStream(t)}I.decodeMultiStream=Kr;function xs(r,e=ft.defaultDecodeOptions){return Kr(r,e)}I.decodeStream=xs});var mt=P(d=>{"use strict";Object.defineProperty(d,"__esModule",{value:!0});d.decodeTimestampExtension=d.encodeTimestampExtension=d.decodeTimestampToTimeSpec=d.encodeTimeSpecToTimestamp=d.encodeDateToTimeSpec=d.EXT_TIMESTAMP=d.ExtData=d.ExtensionCodec=d.Encoder=d.DataViewIndexOutOfBoundsError=d.DecodeError=d.Decoder=d.decodeStream=d.decodeMultiStream=d.decodeArrayStream=d.decodeAsync=d.decodeMulti=d.decode=d.encode=void 0;var Es=qr();Object.defineProperty(d,"encode",{enumerable:!0,get:function(){return Es.encode}});var Zr=ur();Object.defineProperty(d,"decode",{enumerable:!0,get:function(){return Zr.decode}});Object.defineProperty(d,"decodeMulti",{enumerable:!0,get:function(){return Zr.decodeMulti}});var Rt=Qr();Object.defineProperty(d,"decodeAsync",{enumerable:!0,get:function(){return Rt.decodeAsync}});Object.defineProperty(d,"decodeArrayStream",{enumerable:!0,get:function(){return Rt.decodeArrayStream}});Object.defineProperty(d,"decodeMultiStream",{enumerable:!0,get:function(){return Rt.decodeMultiStream}});Object.defineProperty(d,"decodeStream",{enumerable:!0,get:function(){return Rt.decodeStream}});var Yr=yt();Object.defineProperty(d,"Decoder",{enumerable:!0,get:function(){return Yr.Decoder}});Object.defineProperty(d,"DataViewIndexOutOfBoundsError",{enumerable:!0,get:function(){return Yr.DataViewIndexOutOfBoundsError}});var Ts=at();Object.defineProperty(d,"DecodeError",{enumerable:!0,get:function(){return Ts.DecodeError}});var vs=nr();Object.defineProperty(d,"Encoder",{enumerable:!0,get:function(){return vs.Encoder}});var Ps=ut();Object.defineProperty(d,"ExtensionCodec",{enumerable:!0,get:function(){return Ps.ExtensionCodec}});var _s=Yt();Object.defineProperty(d,"ExtData",{enumerable:!0,get:function(){return _s.ExtData}});var le=er();Object.defineProperty(d,"EXT_TIMESTAMP",{enumerable:!0,get:function(){return le.EXT_TIMESTAMP}});Object.defineProperty(d,"encodeDateToTimeSpec",{enumerable:!0,get:function(){return le.encodeDateToTimeSpec}});Object.defineProperty(d,"encodeTimeSpecToTimestamp",{enumerable:!0,get:function(){return le.encodeTimeSpecToTimestamp}});Object.defineProperty(d,"decodeTimestampToTimeSpec",{enumerable:!0,get:function(){return le.decodeTimestampToTimeSpec}});Object.defineProperty(d,"encodeTimestampExtension",{enumerable:!0,get:function(){return le.encodeTimestampExtension}});Object.defineProperty(d,"decodeTimestampExtension",{enumerable:!0,get:function(){return le.decodeTimestampExtension}})});var to={};Un(to,{Console:()=>Lt,Shelter:()=>Qe,WebR:()=>Ke,isRCall:()=>Js,isRCharacter:()=>Fs,isRComplex:()=>Ls,isRDouble:()=>Bs,isREnvironment:()=>Cs,isRFunction:()=>br,isRInteger:()=>js,isRList:()=>qs,isRLogical:()=>Ns,isRNull:()=>Os,isRObject:()=>m,isRPairlist:()=>Is,isRRaw:()=>Vs,isRSymbol:()=>Us});module.exports=In(to);var x=typeof process<"u"&&process.release&&process.release.name==="node",Gt;if(globalThis.document)Gt=r=>new Promise((e,t)=>{let n=document.createElement("script");n.src=r,n.onload=()=>e(),n.onerror=t,document.head.appendChild(n)});else if(globalThis.importScripts)Gt=async r=>{try{globalThis.importScripts(r)}catch(e){if(e instanceof TypeError)await Promise.resolve().then(()=>$(require(r)));else throw e}};else if(x)Gt=async r=>{let e=(await Promise.resolve().then(()=>$(require("path")))).default;await Promise.resolve().then(()=>$(require(e.resolve(r))))};else throw new Error("Cannot determine runtime environment");function se(){let r={resolve:t=>{},reject:t=>{},promise:null},e=new Promise((t,n)=>{r.resolve=t,r.reject=n});return r.promise=e,r}function Ar(r){return new Promise(e=>setTimeout(e,r))}function M(r,e,t,...n){return r===null||typeof r!="object"?r:e(r)?t(r,...n):Array.isArray(r)||ArrayBuffer.isView(r)?r.map(s=>M(s,e,t,...n)):Object.fromEntries(Object.entries(r).map(([s,o],a)=>[s,M(o,e,t,...n)]))}function et(r,e){let t=new XMLHttpRequest;t.open("get",r,!0),t.onload=()=>{let n=new Worker(URL.createObjectURL(new Blob([t.responseText])));e(n)},t.send()}function oe(r){if(x)return!1;let e=new URL(location.href),t=new URL(r,location.origin);return!(e.host===t.host&&e.port===t.port&&e.protocol===t.protocol)}var Cn=new WeakMap;function Mr(r,e){return Cn.set(r,e),r}var tt=63;function rt(){let r=Array.from({length:4},Nn).join("-");if(r.length!==tt)throw new Error("comlink internal error: UUID has the wrong length");return r}function Nn(){let r=Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16),e=15-r.length;return e>0&&(r=Array.from({length:e},()=>0).join("")+r),r}var tn=$(mt());var Ss=new TextEncoder;async function rn(r,e,t){try{let{taskId:n,sizeBuffer:s,dataBuffer:o,signalBuffer:a}=e,c=(0,tn.encode)(t),p=c.length<=o.length;if(Atomics.store(s,0,c.length),Atomics.store(s,1,+p),!p){let[w,G]=ks(r);o.set(Ss.encode(w)),await en(a,n),o=(await G).dataBuffer}o.set(c),Atomics.store(s,1,1),await en(a,n)}catch(n){console.warn(n)}}function ks(r){let e=rt();return[e,new Promise(t=>{x?r.once("message",n=>{!n.id||n.id!==e||t(n)}):r.addEventListener("message",function n(s){!s.data||!s.data.id||s.data.id!==e||(r.removeEventListener("message",n),t(s.data))}),r.start&&r.start()})]}async function en(r,e){let t=(e>>1)%32,n=1;for(;Atomics.compareExchange(r,t+1,0,e)!==0;)await Ar(n),n<32&&(n*=2);Atomics.or(r,0,1<<t),Atomics.notify(r,0)}var C,N,Se,hr,ce=class{constructor(){u(this,Se);u(this,C,void 0);u(this,N,void 0);h(this,N,[]),h(this,C,[])}reset(){h(this,N,[]),h(this,C,[])}put(e){i(this,N).length||T(this,Se,hr).call(this),i(this,N).shift()(e)}async get(){return i(this,C).length||T(this,Se,hr).call(this),i(this,C).shift()}isEmpty(){return!i(this,C).length}isBlocked(){return!!i(this,N).length}get length(){return i(this,C).length-i(this,N).length}};C=new WeakMap,N=new WeakMap,Se=new WeakSet,hr=function(){i(this,C).push(new Promise(e=>{i(this,N).push(e)}))};function wt(r,e){return nn({type:"request",data:{uuid:rt(),msg:r}},e)}function yr(r,e,t){return nn({type:"response",data:{uuid:r,resp:e}},t)}function nn(r,e){return e&&Mr(r,e),r}function sn(r,e){return{type:"sync-request",data:{msg:r,reqData:e}}}function on(r){let e=new Error(r.obj.message);return e.name=r.obj.name,e.stack=r.obj.stack,e}function Ds(r){return r&&typeof r=="object"&&"payloadType"in r&&"obj"in r}function xt(r){return Ds(r)&&r.payloadType==="ptr"}var ue,pe=class{constructor(){this.inputQueue=new ce;this.outputQueue=new ce;this.systemQueue=new ce;u(this,ue,new Map)}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){this.inputQueue.put(e)}async request(e,t){let n=wt(e,t),{resolve:s,reject:o,promise:a}=se();return i(this,ue).set(n.data.uuid,{resolve:s,reject:o}),this.write(n),a}putClosedMessage(){this.outputQueue.put({type:"closed"})}resolveResponse(e){let t=e.data.uuid,n=i(this,ue).get(t);if(n){let s=e.data.resp;i(this,ue).delete(t),s.payloadType==="err"?n.reject(on(s)):n.resolve(s)}else console.warn("Can't find request.")}};ue=new WeakMap;var ln=$(mt());var As=new TextDecoder("utf-8"),de,he,ke,De,ye,Tt=class{constructor(e,t,n=[]){u(this,de,!1);u(this,he,void 0);u(this,ke,void 0);u(this,De,void 0);u(this,ye,void 0);this.syncifier=new fr;this.endpoint=e,this.msg=t,this.transfers=n,h(this,he,!1)}scheduleSync(){if(!i(this,de))return h(this,de,!0),this.syncifier.scheduleTask(this),h(this,ye,this.doSync()),i(this,ye).next(),this}poll(){if(!i(this,de))throw new Error("Task not synchronously scheduled");let{done:e,value:t}=i(this,ye).next();return e?(h(this,he,!0),h(this,ke,t),!0):!1}*doSync(){let{endpoint:e,msg:t,transfers:n}=this,s=new Int32Array(new SharedArrayBuffer(8)),o=this.signalBuffer,a=this.taskId,c=an(tt),p=sn(t,{sizeBuffer:s,dataBuffer:c,signalBuffer:o,taskId:a});if(e.postMessage(p,n),yield,Atomics.load(s,1)===0){let G=As.decode(c.slice(0,tt));Ms(c);let q=Atomics.load(s,0);c=an(q),e.postMessage({id:G,dataBuffer:c}),yield}let w=Atomics.load(s,0);return(0,ln.decode)(c.slice(0,w))}get result(){if(i(this,De))throw i(this,De);if(i(this,he))return i(this,ke);throw new Error("Not ready.")}syncify(){return this.scheduleSync(),this.syncifier.syncifyTask(this),this.result}};de=new WeakMap,he=new WeakMap,ke=new WeakMap,De=new WeakMap,ye=new WeakMap;var fr=class{constructor(){this.nextTaskId=new Int32Array([1]),this.signalBuffer=new Int32Array(new SharedArrayBuffer(32*4+4)),this.tasks=new Map}scheduleTask(e){e.taskId=this.nextTaskId[0],this.nextTaskId[0]+=2,e.signalBuffer=this.signalBuffer,this.tasks.set(e.taskId,e)}waitOnSignalBuffer(){for(;;)switch(Atomics.wait(this.signalBuffer,0,0,50)){case"ok":case"not-equal":return;case"timed-out":Rr[0]!==0&&cn();break;default:throw new Error("Unreachable")}}*tasksIdsToWakeup(){let e=Atomics.load(this.signalBuffer,0);for(let t=0;t<32;t++){let n=1<<t;e&n&&(Atomics.and(this.signalBuffer,0,~n),yield Atomics.exchange(this.signalBuffer,t+1,0))}}pollTasks(e){let t=!1;for(let n of this.tasksIdsToWakeup()){let s=this.tasks.get(n);if(!s)throw new Error(`Assertion error: unknown taskId ${n}.`);s.poll()&&(this.tasks.delete(n),s===e&&(t=!0))}return t}syncifyTask(e){for(;;)if(this.waitOnSignalBuffer(),this.pollTasks(e))return}},Et=[];function an(r){let e=Math.ceil(Math.log2(r));Et[e]||(Et[e]=[]);let t=Et[e].pop();return t?(t.fill(0),t):new Uint8Array(new SharedArrayBuffer(2**e))}function Ms(r){let e=Math.ceil(Math.log2(r.byteLength));Et[e].push(r)}var Rr=new Int32Array(new ArrayBuffer(4)),cn=()=>{throw Rr[0]=0,new Error("Interrupted!")};function un(r){cn=r}function pn(r){Rr=new Int32Array(r)}var l={};function dn(r){Object.keys(r).forEach(e=>l._free(r[e]))}x&&(globalThis.Worker=require("worker_threads").Worker);var fe,vt,hn,Ae,We=class extends pe{constructor(t){super();u(this,vt);u(this,fe,void 0);this.close=()=>{};u(this,Ae,async(t,n)=>{if(!(!n||!n.type))switch(n.type){case"resolve":h(this,fe,new Int32Array(n.data)),this.resolve();return;case"response":this.resolveResponse(n);return;case"system":this.systemQueue.put(n.data);return;default:this.outputQueue.put(n);return;case"sync-request":{let s=n,o=s.data.msg,a=s.data.reqData;switch(o.type){case"read":{let c=await this.inputQueue.get();await rn(t,a,c);break}default:throw new TypeError(`Unsupported request type '${o.type}'.`)}return}case"request":throw new TypeError("Can't send messages of type 'request' from a worker. Please Use 'sync-request' instead.")}});let n=s=>{T(this,vt,hn).call(this,s),this.close=()=>{s.terminate(),this.putClosedMessage()};let o={type:"init",data:{config:t,channelType:F.SharedArrayBuffer}};s.postMessage(o)};if(oe(t.baseUrl))et(`${t.baseUrl}webr-worker.js`,s=>n(s));else{let s=new Worker(`${t.baseUrl}webr-worker.js`);n(s)}({resolve:this.resolve,promise:this.initialised}=se())}interrupt(){if(!i(this,fe))throw new Error("Failed attempt to interrupt before initialising interruptBuffer");this.inputQueue.reset(),i(this,fe)[0]=1}};fe=new WeakMap,vt=new WeakSet,hn=function(t){x?t.on("message",n=>{i(this,Ae).call(this,t,n)}):t.onmessage=n=>i(this,Ae).call(this,t,n.data)},Ae=new WeakMap;var Q,Me,Z,Oe,mr=class{constructor(){u(this,Q,void 0);u(this,Me,()=>0);u(this,Z,new Int32Array(new SharedArrayBuffer(4)));u(this,Oe,()=>{});h(this,Q,x?require("worker_threads").parentPort:globalThis),pn(i(this,Z).buffer),un(()=>this.handleInterrupt())}resolve(){this.write({type:"resolve",data:i(this,Z).buffer})}write(e,t){i(this,Q).postMessage(e,t)}writeSystem(e,t){i(this,Q).postMessage({type:"system",data:e},t)}read(){let e={type:"read"};return new Tt(i(this,Q),e).syncify()}inputOrDispatch(){for(;;){let e=this.read();if(e.type==="stdin")return l.allocateUTF8(e.data);i(this,Me).call(this,e)}}run(e){l.callMain(e)}setInterrupt(e){h(this,Oe,e)}handleInterrupt(){i(this,Z)[0]!==0&&(i(this,Z)[0]=0,i(this,Oe).call(this))}setDispatchHandler(e){h(this,Me,e)}};Q=new WeakMap,Me=new WeakMap,Z=new WeakMap,Oe=new WeakMap;var kt=$(mt());x&&(globalThis.Worker=require("worker_threads").Worker);var Re,Y,me,Pt,yn,_t,fn,St,Rn,Ie,Ue=class extends pe{constructor(t){super();u(this,Pt);u(this,_t);u(this,St);this.close=()=>{};u(this,Re,new Map);u(this,Y,void 0);u(this,me,!1);u(this,Ie,async(t,n)=>{if(!(!n||!n.type))switch(n.type){case"resolve":this.resolve();return;case"response":this.resolveResponse(n);return;case"system":this.systemQueue.put(n.data);return;default:this.outputQueue.put(n);return;case"sync-request":{let s=n.data;i(this,Re).set(s.data.uuid,s.data.msg);return}case"request":throw new TypeError("Can't send messages of type 'request' from a worker.Use service worker fetch request instead.")}});let n=s=>{T(this,St,Rn).call(this,s),this.close=()=>{s.terminate(),this.putClosedMessage()},T(this,Pt,yn).call(this,`${t.serviceWorkerUrl}webr-serviceworker.js`).then(o=>{let a={type:"init",data:{config:t,channelType:F.ServiceWorker,clientId:o,location:window.location.href}};s.postMessage(a)})};if(oe(t.serviceWorkerUrl))et(`${t.serviceWorkerUrl}webr-worker.js`,s=>n(s));else{let s=new Worker(`${t.serviceWorkerUrl}webr-worker.js`);n(s)}({resolve:this.resolve,promise:this.initialised}=se())}activeRegistration(){var t;if(!((t=i(this,Y))!=null&&t.active))throw new Error("Attempted to obtain a non-existent active registration.");return i(this,Y).active}interrupt(){h(this,me,!0)}};Re=new WeakMap,Y=new WeakMap,me=new WeakMap,Pt=new WeakSet,yn=async function(t){h(this,Y,await navigator.serviceWorker.register(t)),await navigator.serviceWorker.ready,window.addEventListener("beforeunload",()=>{var s;(s=i(this,Y))==null||s.unregister()});let n=await new Promise(s=>{navigator.serviceWorker.addEventListener("message",function o(a){a.data.type==="registration-successful"&&(navigator.serviceWorker.removeEventListener("message",o),s(a.data.clientId))}),this.activeRegistration().postMessage({type:"register-client-main"})});return navigator.serviceWorker.addEventListener("message",s=>{T(this,_t,fn).call(this,s)}),n},_t=new WeakSet,fn=async function(t){if(t.data.type==="request"){let n=t.data.data,s=i(this,Re).get(n);if(!s)throw new Error("Request not found during service worker XHR request");switch(i(this,Re).delete(n),s.type){case"read":{let o=await this.inputQueue.get();this.activeRegistration().postMessage({type:"wasm-webr-fetch-response",uuid:n,response:yr(n,o)});break}case"interrupt":{let o=i(this,me);this.activeRegistration().postMessage({type:"wasm-webr-fetch-response",uuid:n,response:yr(n,o)}),this.inputQueue.reset(),h(this,me,!1);break}default:throw new TypeError(`Unsupported request type '${s.type}'.`)}return}},St=new WeakSet,Rn=function(t){x?t.on("message",n=>{i(this,Ie).call(this,t,n)}):t.onmessage=n=>i(this,Ie).call(this,t,n.data)},Ie=new WeakMap;var ge,Ce,Ne,je,Be,gr=class{constructor(e){u(this,ge,void 0);u(this,Ce,void 0);u(this,Ne,void 0);u(this,je,()=>0);u(this,Be,()=>{});this.onMessageFromMainThread=()=>{};if(!e.clientId||!e.location)throw Error("Can't start service worker channel");h(this,Ce,e.clientId),h(this,Ne,e.location),h(this,ge,x?require("worker_threads").parentPort:globalThis)}resolve(){this.write({type:"resolve"})}write(e,t){i(this,ge).postMessage(e,t)}writeSystem(e,t){i(this,ge).postMessage({type:"system",data:e},t)}syncRequest(e){let t=wt(e);this.write({type:"sync-request",data:t});let n=0;for(;;)try{let s=new URL("__wasm__/webr-fetch-request/",i(this,Ne)),o=new XMLHttpRequest;o.timeout=6e4,o.responseType="arraybuffer",o.open("POST",s,!1);let a={clientId:i(this,Ce),uuid:t.data.uuid};return o.send((0,kt.encode)(a)),(0,kt.decode)(o.response)}catch(s){if(s instanceof DOMException&&n++<1e3)console.log("Service worker request failed - resending request");else throw s}}read(){return this.syncRequest({type:"read"}).data.resp}inputOrDispatch(){for(;;){let e=this.read();if(e.type==="stdin")return l.allocateUTF8(e.data);i(this,je).call(this,e)}}run(e){l.callMain(e)}setInterrupt(e){h(this,Be,e)}handleInterrupt(){this.syncRequest({type:"interrupt"}).data.resp&&i(this,Be).call(this)}setDispatchHandler(e){h(this,je,e)}};ge=new WeakMap,Ce=new WeakMap,Ne=new WeakMap,je=new WeakMap,Be=new WeakMap;var F={Automatic:0,SharedArrayBuffer:1,ServiceWorker:2};function mn(r){switch(r.channelType){case F.SharedArrayBuffer:return new We(r);case F.ServiceWorker:return new Ue(r);case F.Automatic:default:if(typeof SharedArrayBuffer<"u")return new We(r);if("serviceWorker"in navigator&&!oe(r.serviceWorkerUrl))return new Ue(r);throw new Error("Can't initialise main thread communication channel")}}var gn=x?__dirname+"/":"./",bn="https://repo.r-wasm.org";function m(r){return r&&(typeof r=="object"||typeof r=="function")&&"payloadType"in r&&xt(r._payload)}function Os(r){return m(r)&&r._payload.obj.type==="null"}function Us(r){return m(r)&&r._payload.obj.type==="symbol"}function Is(r){return m(r)&&r._payload.obj.type==="pairlist"}function Cs(r){return m(r)&&r._payload.obj.type==="environment"}function Ns(r){return m(r)&&r._payload.obj.type==="logical"}function js(r){return m(r)&&r._payload.obj.type==="integer"}function Bs(r){return m(r)&&r._payload.obj.type==="double"}function Ls(r){return m(r)&&r._payload.obj.type==="complex"}function Fs(r){return m(r)&&r._payload.obj.type==="character"}function qs(r){return m(r)&&r._payload.obj.type==="list"}function Vs(r){return m(r)&&r._payload.obj.type==="raw"}function Js(r){return m(r)&&r._payload.obj.type==="call"}function br(r){var e;return!!(m(r)&&((e=r._payload.obj.methods)!=null&&e.includes("exec")))}var f={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 wr(r){return r&&typeof r=="object"&&Object.keys(f).includes(r.type)}function xr(r){return r&&typeof r=="object"&&"re"in r&&"im"in r}function Dt(r){return l._Rf_protect(j(r)),r}function S(r,e){return l._Rf_protect(j(r)),++e.n,r}function wn(r){let e=l._malloc(4);return l._R_ProtectWithIndex(j(r),e),{loc:l.getValue(e,"i32"),ptr:e}}function xn(r){l._Rf_unprotect(1),l._free(r.ptr)}function En(r,e){return l._R_Reprotect(j(r),e.loc),r}function D(r){l._Rf_unprotect(r)}function Er(r,e,t){l._Rf_defineVar(j(e),j(t),j(r))}function Tn(r,e){let t={},n={n:0};try{let s=new Fe(e);S(s,n),t.code=l.allocateUTF8(r);let o=l._R_ParseEvalString(t.code,s.ptr);return y.wrap(o)}finally{dn(t),D(n.n)}}function Le(r,e){return l.getWasmTableEntry(l.GOT.ffi_safe_eval.value)(j(r),j(e))}function j(r){return Gs(r)?r.ptr:r}function ne(r,e){if(l._TYPEOF(r.ptr)!==f[e])throw new Error(`Unexpected object type "${r.type()}" when expecting type "${e}"`)}function zs(r){if(wr(r))return new(vn(f[r.type]))(r);if(r&&typeof r=="object"&&"type"in r&&r.type==="null")return new Ot;if(r===null)return new te({type:"logical",names:null,values:[null]});if(typeof r=="boolean")return new te(r);if(typeof r=="number")return new qe(r);if(typeof r=="string")return new J(r);if(xr(r))return new Ve(r);if(Array.isArray(r))return Xs(r);throw new Error("Robj construction for this JS object is not yet supported")}function Xs(r){let e={n:0};try{let t=new re([new H("c"),...r]);return S(t,e),t.eval()}finally{D(e.n)}}var E=class{constructor(e){this.ptr=e}type(){let e=l._TYPEOF(this.ptr);return Object.keys(f).find(n=>f[n]===e)}},we,Wt,ee=class extends E{constructor(t){if(!(t instanceof E))return zs(t);super(t.ptr);u(this,we)}static wrap(t){let n=l._TYPEOF(t);return new(vn(n))(new E(t))}get[Symbol.toStringTag](){return`RObject:${this.type()}`}static getPersistentObject(t){return k[t]}getPropertyValue(t){return this[t]}inspect(){Tn(".Internal(inspect(x))",{x:this})}isNull(){return l._TYPEOF(this.ptr)===f.null}isUnbound(){return this.ptr===k.unboundValue.ptr}attrs(){return xe.wrap(l._ATTRIB(this.ptr))}setNames(t){let n;if(t===null)n=k.null;else if(Array.isArray(t)&&t.every(s=>typeof s=="string"||s===null))n=new J(t);else throw new Error("Argument to setNames must be null or an Array of strings or null");return l._Rf_setAttrib(this.ptr,k.namesSymbol.ptr,n.ptr),this}names(){let t=J.wrap(l._Rf_getAttrib(this.ptr,k.namesSymbol.ptr));return t.isNull()?null:t.toArray()}includes(t){let n=this.names();return n&&n.includes(t)}toJs(t={depth:0},n=1){throw new Error("This R object cannot be converted to JS")}subset(t){return T(this,we,Wt).call(this,t,k.bracketSymbol.ptr)}get(t){return T(this,we,Wt).call(this,t,k.bracket2Symbol.ptr)}getDollar(t){return T(this,we,Wt).call(this,t,k.dollarSymbol.ptr)}pluck(...t){let n=wn(k.null);try{let s=(a,c)=>{let p=a.get(c);return En(p,n)},o=t.reduce(s,this);return o.isNull()?void 0:o}finally{xn(n)}}set(t,n){let s={n:0};try{let o=new ee(t);S(o,s);let a=new ee(n);S(a,s);let c=new H("[[<-"),p=l._Rf_lang4(c.ptr,this.ptr,o.ptr,a.ptr);return S(p,s),ee.wrap(Le(p,k.baseEnv))}finally{D(s.n)}}static getMethods(t){let n=new Set,s=t;do Object.getOwnPropertyNames(s).map(o=>n.add(o));while(s=Object.getPrototypeOf(s));return[...n.keys()].filter(o=>typeof t[o]=="function")}},y=ee;we=new WeakSet,Wt=function(t,n){let s={n:0};try{let o=new ee(t);S(o,s);let a=l._Rf_lang3(n,this.ptr,o.ptr);return S(a,s),ee.wrap(Le(a,k.baseEnv))}finally{D(s.n)}};var Ot=class extends y{constructor(){return super(new E(l.getValue(l._R_NilValue,"*"))),this}toJs(){return{type:"null"}}},H=class extends y{constructor(e){if(e instanceof E){ne(e,"symbol"),super(e);return}let t=l.allocateUTF8(e);try{super(new E(l._Rf_install(t)))}finally{l._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 Je.wrap(l._PRINTNAME(this.ptr))}symvalue(){return y.wrap(l._SYMVALUE(this.ptr))}internal(){return y.wrap(l._INTERNAL(this.ptr))}},xe=class extends y{constructor(e){if(e instanceof E)return ne(e,"pairlist"),super(e),this;let t={n:0};try{let{names:n,values:s}=He(e),o=xe.wrap(l._Rf_allocList(s.length));S(o,t);for(let[a,c]=[0,o];!c.isNull();[a,c]=[a+1,c.cdr()])c.setcar(new y(s[a]));o.setNames(n),super(o)}finally{D(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:n=1}={}){let s=this.entries({depth:n}),o=s.map(([a,c])=>a);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting pairlist without allowDuplicateKey enabled");if(!t&&o.some(a=>!a))throw new Error("Empty or null key when converting pairlist without allowEmptyKey enabled");return Object.fromEntries(s.filter((a,c)=>s.findIndex(p=>p[0]===a[0])===c))}entries(e={depth:1}){let t=this.toJs(e);return t.values.map((n,s)=>[t.names?t.names[s]:null,n])}toJs(e={depth:0},t=1){let n=[],s=!1,o=[];for(let c=this;!c.isNull();c=c.cdr()){let p=c.tag();p.isNull()?n.push(""):(s=!0,n.push(p.toString())),e.depth&&t>=e.depth?o.push(c.car()):o.push(c.car().toJs(e,t+1))}return{type:"pairlist",names:s?n:null,values:o}}includes(e){return e in this.toObject()}setcar(e){l._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(l._CAR(this.ptr))}cdr(){return y.wrap(l._CDR(this.ptr))}tag(){return y.wrap(l._TAG(this.ptr))}},re=class extends y{constructor(e){if(e instanceof E)return ne(e,"call"),super(e),this;let t={n:0};try{let{values:n}=He(e),s=n.map(a=>S(new y(a),t)),o=re.wrap(l._Rf_allocVector(f.call,n.length));S(o,t);for(let[a,c]=[0,o];!c.isNull();[a,c]=[a+1,c.cdr()])c.setcar(s[a]);super(o)}finally{D(t.n)}}setcar(e){l._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(l._CAR(this.ptr))}cdr(){return y.wrap(l._CDR(this.ptr))}eval(){return y.wrap(Le(this.ptr,k.baseEnv))}},Tr=class extends y{constructor(e){if(e instanceof E)return ne(e,"list"),super(e),this;let t={n:0};try{let{names:n,values:s}=He(e),o=l._Rf_allocVector(f.list,s.length);S(o,t),s.forEach((a,c)=>{l._SET_VECTOR_ELT(o,c,new y(a).ptr)}),y.wrap(o).setNames(n),super(new E(o))}finally{D(t.n)}}get length(){return l._LENGTH(this.ptr)}toArray(e={depth:1}){return this.toJs(e).values}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1,depth:n=1}={}){let s=this.entries({depth:n}),o=s.map(([a,c])=>a);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting list without allowDuplicateKey enabled");if(!t&&o.some(a=>!a))throw new Error("Empty or null key when converting list without allowEmptyKey enabled");return Object.fromEntries(s.filter((a,c)=>s.findIndex(p=>p[0]===a[0])===c))}entries(e={depth:1}){let t=this.toJs(e);return t.values.map((n,s)=>[t.names?t.names[s]:null,n])}toJs(e={depth:0},t=1){return{type:"list",names:this.names(),values:[...Array(this.length).keys()].map(n=>e.depth&&t>=e.depth?this.get(n+1):this.get(n+1).toJs(e,t+1))}}},be=class extends y{exec(...e){let t={n:0};try{let n=new re([this,...e]);return S(n,t),n.eval()}finally{D(t.n)}}},Je=class extends y{constructor(e){if(e instanceof E){ne(e,"string"),super(e);return}let t=l.allocateUTF8(e);try{super(new E(l._Rf_mkChar(t)))}finally{l._free(t)}}toString(){return l.UTF8ToString(l._R_CHAR(this.ptr))}toJs(){return{type:"string",value:this.toString()}}},Fe=class extends y{constructor(e={}){if(e instanceof E)return ne(e,"environment"),super(e),this;let t=0;try{let{names:n,values:s}=He(e),o=Dt(l._R_NewEnv(k.globalEnv.ptr,0,0));++t,s.forEach((a,c)=>{let p=n?n[c]:null;if(!p)throw new Error("Can't create object in new environment with empty symbol name");let w=new H(p),G=Dt(new y(a));try{Er(o,w,G)}finally{D(1)}}),super(new E(o))}finally{D(t)}}ls(e=!1,t=!0){return J.wrap(l._R_lsInternal3(this.ptr,Number(e),Number(t))).toArray()}bind(e,t){let n=new H(e),s=Dt(new y(t));try{Er(this,n,s)}finally{D(1)}}names(){return this.ls(!0,!0)}frame(){return y.wrap(l._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=0}={}){let t=this.names();return Object.fromEntries([...Array(t.length).keys()].map(n=>[t[n],this.getDollar(t[n]).toJs({depth:e})]))}toJs(e={depth:0},t=1){let n=this.names(),s=[...Array(n.length).keys()].map(o=>e.depth&&t>=e.depth?this.getDollar(n[o]):this.getDollar(n[o]).toJs(e,t+1));return{type:"environment",names:n,values:s}}},z=class extends y{constructor(e,t,n){if(e instanceof E)return ne(e,t),super(e),this;let s={n:0};try{let{names:o,values:a}=He(e),c=l._Rf_allocVector(f[t],a.length);S(c,s),a.forEach(n(c)),y.wrap(c).setNames(o),super(new E(c))}finally{D(s.n)}}get length(){return l._LENGTH(this.ptr)}get(e){return super.get(e)}subset(e){return super.subset(e)}getDollar(e){throw new Error("$ operator is invalid for atomic vectors")}detectMissing(){let e={n:0};try{let t=l._Rf_lang2(new H("is.na").ptr,this.ptr);S(t,e);let n=te.wrap(Le(t,k.baseEnv));S(n,e);let s=n.toTypedArray();return Array.from(s).map(o=>!!o)}finally{D(e.n)}}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,n)=>t?null:e[n])}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1}={}){let n=this.entries(),s=n.map(([o,a])=>o);if(!e&&new Set(s).size!==s.length)throw new Error("Duplicate key when converting atomic vector without allowDuplicateKey enabled");if(!t&&s.some(o=>!o))throw new Error("Empty or null key when converting atomic vector without allowEmptyKey enabled");return Object.fromEntries(n.filter((o,a)=>n.findIndex(c=>c[0]===o[0])===a))}entries(){let e=this.toArray(),t=this.names();return e.map((n,s)=>[t?t[s]:null,n])}toJs(){return{type:this.type(),names:this.names(),values:this.toArray()}}},Ut,vr=class extends z{constructor(e){super(e,"logical",i(vr,Ut))}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(l.HEAP32.subarray(l._LOGICAL(this.ptr)/4,l._LOGICAL(this.ptr)/4+this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,n)=>t?null:!!e[n])}},te=vr;Ut=new WeakMap,u(te,Ut,e=>{let t=l._LOGICAL(e),n=l.getValue(l._R_NaInt,"i32");return(s,o)=>{l.setValue(t+4*o,s===null?n:!!s,"i32")}});var It,Pr=class extends z{constructor(e){super(e,"integer",i(Pr,It))}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(l.HEAP32.subarray(l._INTEGER(this.ptr)/4,l._INTEGER(this.ptr)/4+this.length))}},At=Pr;It=new WeakMap,u(At,It,e=>{let t=l._INTEGER(e),n=l.getValue(l._R_NaInt,"i32");return(s,o)=>{l.setValue(t+4*o,s===null?n:Math.round(Number(s)),"i32")}});var Ct,_r=class extends z{constructor(e){super(e,"double",i(_r,Ct))}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(l.HEAPF64.subarray(l._REAL(this.ptr)/8,l._REAL(this.ptr)/8+this.length))}},qe=_r;Ct=new WeakMap,u(qe,Ct,e=>{let t=l._REAL(e),n=l.getValue(l._R_NaReal,"double");return(s,o)=>{l.setValue(t+8*o,s===null?n:s,"double")}});var Nt,Sr=class extends z{constructor(e){super(e,"complex",i(Sr,Nt))}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(l.HEAPF64.subarray(l._COMPLEX(this.ptr)/8,l._COMPLEX(this.ptr)/8+2*this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,n)=>t?null:{re:e[2*n],im:e[2*n+1]})}},Ve=Sr;Nt=new WeakMap,u(Ve,Nt,e=>{let t=l._COMPLEX(e),n=l.getValue(l._R_NaReal,"double");return(s,o)=>{l.setValue(t+8*(2*o),s===null?n:s.re,"double"),l.setValue(t+8*(2*o+1),s===null?n:s.im,"double")}});var jt,kr=class extends z{constructor(e){super(e,"character",i(kr,jt))}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(l.HEAPU32.subarray(l._STRING_PTR(this.ptr)/4,l._STRING_PTR(this.ptr)/4+this.length))}toArray(){return this.detectMissing().map((e,t)=>e?null:l.UTF8ToString(l._R_CHAR(l._STRING_ELT(this.ptr,t))))}},J=kr;jt=new WeakMap,u(J,jt,e=>(t,n)=>{t===null?l._SET_STRING_ELT(e,n,k.naString.ptr):l._SET_STRING_ELT(e,n,new Je(t).ptr)});var Bt,Dr=class extends z{constructor(e){super(e,"raw",i(Dr,Bt))}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(l.HEAPU8.subarray(l._RAW(this.ptr),l._RAW(this.ptr)+this.length))}},Mt=Dr;Bt=new WeakMap,u(Mt,Bt,e=>{let t=l._RAW(e);return(n,s)=>{l.setValue(t+s,Number(n),"i8")}});function He(r){return wr(r)?r:Array.isArray(r)||ArrayBuffer.isView(r)?{names:null,values:r}:r&&typeof r=="object"&&!xr(r)?{names:Object.keys(r),values:Object.values(r)}:{names:null,values:[r]}}function vn(r){let e={[f.null]:Ot,[f.symbol]:H,[f.pairlist]:xe,[f.closure]:be,[f.environment]:Fe,[f.call]:re,[f.special]:be,[f.builtin]:be,[f.string]:Je,[f.logical]:te,[f.integer]:At,[f.double]:qe,[f.complex]:Ve,[f.character]:J,[f.list]:Tr,[f.raw]:Mt,[f.function]:be};return r in e?e[r]:y}function Gs(r){return r instanceof y}var k;function Ks(){}function Qs(r,e){return async function*(){let t={type:"callRObjectMethod",data:{payload:e._payload,prop:"getPropertyValue",args:[{payloadType:"raw",obj:"length"}],shelter:void 0}},n=await r.request(t);if(typeof n.obj!="number")throw new Error("Cannot iterate over object, unexpected type for length property.");for(let s=1;s<=n.obj;s++)yield e.get(s)}}function Pn(r,e,t){return async(...n)=>{let s=n.map(c=>m(c)?c._payload:{obj:M(c,m,p=>p._payload),payloadType:"raw"}),o={type:"callRObjectMethod",data:{payload:t,prop:e,args:s}},a=await r.request(o);switch(a.payloadType){case"ptr":return X(r,a);case"raw":return M(a,xt,(p,w)=>X(w,p),r).obj}}}async function Zs(r,e,t,n){let s={type:"newRObject",data:{objType:e,obj:M(n,m,a=>a._payload),shelter:t}},o=await r.request(s);switch(o.payloadType){case"raw":throw new Error("Unexpected raw payload type returned from newRObject");case"ptr":return X(r,o)}}function X(r,e){var n;let t=new Proxy((n=e.obj.methods)!=null&&n.includes("exec")?Object.assign(Ks,{...e}):e,{get:(s,o)=>{var a;if(o==="_payload")return e;if(o===Symbol.asyncIterator)return Qs(r,t);if((a=e.obj.methods)!=null&&a.includes(o.toString()))return Pn(r,o.toString(),e)},apply:async(s,o,a)=>{let c=await X(r,e).exec(...a);return br(c)?c:c.toJs()}});return t}function W(r,e,t){return new Proxy(y,{construct:(n,s)=>Zs(r,t,e,...s),get:(n,s)=>Pn(r,s.toString())})}var ze,Xe,Ge,$e,Ft,qt,Vt,Jt,Ht,_n,Lt=class{constructor(e={},t={REnv:{R_HOME:"/usr/lib/R",FONTCONFIG_PATH:"/etc/fonts",R_ENABLE_JIT:"0",R_DEFAULT_DEVICE:"canvas"}}){u(this,Ht);u(this,ze,void 0);u(this,Xe,void 0);u(this,Ge,void 0);u(this,$e,void 0);u(this,Ft,e=>{console.log(e)});u(this,qt,e=>{console.error(e)});u(this,Vt,e=>{let t=prompt(e);t&&this.stdin(`${t}
2
- `)});u(this,Jt,e=>{if(x)throw new Error("Plotting with HTML canvas is not yet supported under Node");Function(`this.getContext('2d').${e}`).bind(this.canvas)()});this.webR=new Ke(t),x||(this.canvas=document.createElement("canvas"),this.canvas.setAttribute("width","1008"),this.canvas.setAttribute("height","1008")),h(this,ze,e.stdout||i(this,Ft)),h(this,Xe,e.stderr||i(this,qt)),h(this,Ge,e.prompt||i(this,Vt)),h(this,$e,e.canvasExec||i(this,Jt))}stdin(e){this.webR.writeConsole(e)}interrupt(){this.webR.interrupt()}run(){T(this,Ht,_n).call(this)}};ze=new WeakMap,Xe=new WeakMap,Ge=new WeakMap,$e=new WeakMap,Ft=new WeakMap,qt=new WeakMap,Vt=new WeakMap,Jt=new WeakMap,Ht=new WeakSet,_n=async function(){for(;;){let e=await this.webR.read();switch(e.type){case"stdout":i(this,ze).call(this,e.data);break;case"stderr":i(this,Xe).call(this,e.data);break;case"prompt":i(this,Ge).call(this,e.data);break;case"canvasExec":i(this,$e).call(this,e.data);break;case"closed":return;default:console.warn(`Unhandled output type for webR Console: ${e.type}.`)}}};var Ys={FONTCONFIG_PATH:"/etc/fonts",R_HOME:"/usr/lib/R",R_ENABLE_JIT:"0"},Sn={RArgs:[],REnv:Ys,baseUrl:gn,serviceWorkerUrl:"",repoUrl:bn,homedir:"/home/web_user",interactive:!0,channelType:F.Automatic},b,zt,kn,Ke=class{constructor(e={}){u(this,zt);u(this,b,void 0);this.FS={lookupPath:async e=>{let t={type:"lookupPath",data:{path:e}};return(await i(this,b).request(t)).obj},mkdir:async e=>{let t={type:"mkdir",data:{path:e}};return(await i(this,b).request(t)).obj},readFile:async(e,t)=>{let n={type:"readFile",data:{path:e,flags:t}};return(await i(this,b).request(n)).obj},rmdir:async e=>{let t={type:"rmdir",data:{path:e}};await i(this,b).request(t)},writeFile:async(e,t,n)=>{let s={type:"writeFile",data:{path:e,data:t,flags:n}};await i(this,b).request(s)},unlink:async e=>{let t={type:"unlink",data:{path:e}};await i(this,b).request(t)}};let t={...Sn,...e,REnv:{...Sn.REnv,...e.REnv}};h(this,b,mn(t)),this.objs={},this.Shelter=eo(i(this,b))}async init(){let e=await i(this,b).initialised;return this.globalShelter=await new this.Shelter,this.RObject=this.globalShelter.RObject,this.RLogical=this.globalShelter.RLogical,this.RInteger=this.globalShelter.RInteger,this.RDouble=this.globalShelter.RDouble,this.RComplex=this.globalShelter.RComplex,this.RCharacter=this.globalShelter.RCharacter,this.RRaw=this.globalShelter.RRaw,this.RList=this.globalShelter.RList,this.RPairlist=this.globalShelter.RPairlist,this.REnvironment=this.globalShelter.REnvironment,this.RSymbol=this.globalShelter.RSymbol,this.RString=this.globalShelter.RString,this.RCall=this.globalShelter.RCall,this.objs={baseEnv:await this.RObject.getPersistentObject("baseEnv"),globalEnv:await this.RObject.getPersistentObject("globalEnv"),null:await this.RObject.getPersistentObject("null"),true:await this.RObject.getPersistentObject("true"),false:await this.RObject.getPersistentObject("false"),na:await this.RObject.getPersistentObject("na")},T(this,zt,kn).call(this),e}close(){i(this,b).close()}async read(){return await i(this,b).read()}async flush(){return await i(this,b).flush()}write(e){i(this,b).write(e)}writeConsole(e){this.write({type:"stdin",data:e+`
3
- `})}interrupt(){i(this,b).interrupt()}async installPackages(e,t=!1){for(let n of e){let s={type:"installPackage",data:{name:n,quiet:t}};await i(this,b).request(s)}}async destroy(e){await this.globalShelter.destroy(e)}async evalR(e,t){return this.globalShelter.evalR(e,t)}async evalRVoid(e,t){return this.evalRRaw(e,"void",t)}async evalRBoolean(e,t){return this.evalRRaw(e,"boolean",t)}async evalRNumber(e,t){return this.evalRRaw(e,"number",t)}async evalRString(e,t){return this.evalRRaw(e,"string",t)}async evalRRaw(e,t,n={}){let s=M(n,m,c=>c._payload),o={type:"evalRRaw",data:{code:e,options:s,outputType:t}},a=await i(this,b).request(o);switch(a.payloadType){case"raw":return a.obj;case"ptr":throw new Error("Unexpected ptr payload type returned from evalRVoid")}}async invokeWasmFunction(e,...t){let n={type:"invokeWasmFunction",data:{ptr:e,args:t}};return(await i(this,b).request(n)).obj}};b=new WeakMap,zt=new WeakSet,kn=async function(){for(;;){let e=await i(this,b).readSystem();switch(e.type){case"setTimeoutWasm":setTimeout((t,n)=>{this.invokeWasmFunction(t,...n)},e.data.delay,e.data.ptr,e.data.args);break;case"console.log":console.log(e.data);break;case"console.warn":console.warn(e.data);break;case"console.error":console.error(e.data);break;default:throw new Error("Unknown system message type `"+e.type+"`")}}};var g,R,Ze,Qe=class{constructor(e){u(this,g,"");u(this,R,void 0);u(this,Ze,!1);h(this,R,e)}async init(){if(i(this,Ze))return;let e={type:"newShelter"},t=await i(this,R).request(e);h(this,g,t.obj),this.RObject=W(i(this,R),i(this,g),"object"),this.RLogical=W(i(this,R),i(this,g),"logical"),this.RInteger=W(i(this,R),i(this,g),"integer"),this.RDouble=W(i(this,R),i(this,g),"double"),this.RComplex=W(i(this,R),i(this,g),"complex"),this.RCharacter=W(i(this,R),i(this,g),"character"),this.RRaw=W(i(this,R),i(this,g),"raw"),this.RList=W(i(this,R),i(this,g),"list"),this.RPairlist=W(i(this,R),i(this,g),"pairlist"),this.REnvironment=W(i(this,R),i(this,g),"environment"),this.RSymbol=W(i(this,R),i(this,g),"symbol"),this.RString=W(i(this,R),i(this,g),"string"),this.RCall=W(i(this,R),i(this,g),"call"),h(this,Ze,!0)}async purge(){let e={type:"shelterPurge",data:i(this,g)};await i(this,R).request(e)}async destroy(e){let t={type:"shelterDestroy",data:{id:i(this,g),obj:e._payload}};await i(this,R).request(t)}async size(){let e={type:"shelterSize",data:i(this,g)};return(await i(this,R).request(e)).obj}async evalR(e,t={}){let n=M(t,m,a=>a._payload),s={type:"evalR",data:{code:e,options:n,shelter:i(this,g)}},o=await i(this,R).request(s);switch(o.payloadType){case"raw":throw new Error("Unexpected payload type returned from evalR");default:return X(i(this,R),o)}}async captureR(e,t={}){let n=M(t,m,a=>a._payload),s={type:"captureR",data:{code:e,options:n,shelter:i(this,g)}},o=await i(this,R).request(s);switch(o.payloadType){case"ptr":throw new Error("Unexpected payload type returned from evalR");case"raw":{let a=o.obj,c=X(i(this,R),a.result),p=a.output;for(let w=0;w<p.length;++w)p[w].type!=="stdout"&&p[w].type!=="stderr"&&(p[w].data=X(i(this,R),p[w].data));return{result:c,output:p}}}}};g=new WeakMap,R=new WeakMap,Ze=new WeakMap;function eo(r){return new Proxy(Qe,{construct:async()=>{let e=new Qe(r);return await e.init(),e}})}0&&(module.exports={Console,Shelter,WebR,isRCall,isRCharacter,isRComplex,isRDouble,isREnvironment,isRFunction,isRInteger,isRList,isRLogical,isRNull,isRObject,isRPairlist,isRRaw,isRSymbol});
1
+ "use strict";var Gs=Object.create;var Rt=Object.defineProperty;var Ks=Object.getOwnPropertyDescriptor;var Qs=Object.getOwnPropertyNames;var Zs=Object.getPrototypeOf,Ys=Object.prototype.hasOwnProperty;var _=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),en=(r,e)=>{for(var t in e)Rt(r,t,{get:e[t],enumerable:!0})},Gr=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Qs(e))!Ys.call(r,n)&&n!==t&&Rt(r,n,{get:()=>e[n],enumerable:!(s=Ks(e,n))||s.enumerable});return r};var te=(r,e,t)=>(t=r!=null?Gs(Zs(r)):{},Gr(e||!r||!r.__esModule?Rt(t,"default",{value:r,enumerable:!0}):t,r)),tn=r=>Gr(Rt({},"__esModule",{value:!0}),r);var dr=(r,e,t)=>{if(!e.has(r))throw TypeError("Cannot "+t)};var i=(r,e,t)=>(dr(r,e,"read from private field"),t?t.call(r):e.get(r)),u=(r,e,t)=>{if(e.has(r))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(r):e.set(r,t)},d=(r,e,t,s)=>(dr(r,e,"write to private field"),s?s.call(r,t):e.set(r,t),t),Kr=(r,e,t,s)=>({set _(n){d(r,e,n,t)},get _(){return i(r,e,s)}}),x=(r,e,t)=>(dr(r,e,"access private method"),t);var Ae=_(I=>{"use strict";Object.defineProperty(I,"__esModule",{value:!0});I.getUint64=I.getInt64=I.setInt64=I.setUint64=I.UINT32_MAX=void 0;I.UINT32_MAX=4294967295;function nn(r,e,t){let s=t/4294967296,n=t;r.setUint32(e,s),r.setUint32(e+4,n)}I.setUint64=nn;function on(r,e,t){let s=Math.floor(t/4294967296),n=t;r.setUint32(e,s),r.setUint32(e+4,n)}I.setInt64=on;function an(r,e){let t=r.getInt32(e),s=r.getUint32(e+4);return t*4294967296+s}I.getInt64=an;function ln(r,e){let t=r.getUint32(e),s=r.getUint32(e+4);return t*4294967296+s}I.getUint64=ln});var wt=_(S=>{"use strict";var yr,fr,Rr;Object.defineProperty(S,"__esModule",{value:!0});S.utf8DecodeTD=S.TEXT_DECODER_THRESHOLD=S.utf8DecodeJs=S.utf8EncodeTE=S.TEXT_ENCODER_THRESHOLD=S.utf8EncodeJs=S.utf8Count=void 0;var Yr=Ae(),bt=(typeof process>"u"||((yr=process==null?void 0:process.env)===null||yr===void 0?void 0:yr.TEXT_ENCODING)!=="never")&&typeof TextEncoder<"u"&&typeof TextDecoder<"u";function cn(r){let e=r.length,t=0,s=0;for(;s<e;){let n=r.charCodeAt(s++);if(n&4294967168)if(!(n&4294965248))t+=2;else{if(n>=55296&&n<=56319&&s<e){let o=r.charCodeAt(s);(o&64512)===56320&&(++s,n=((n&1023)<<10)+(o&1023)+65536)}n&4294901760?t+=4:t+=3}else{t++;continue}}return t}S.utf8Count=cn;function un(r,e,t){let s=r.length,n=t,o=0;for(;o<s;){let a=r.charCodeAt(o++);if(a&4294967168)if(!(a&4294965248))e[n++]=a>>6&31|192;else{if(a>=55296&&a<=56319&&o<s){let c=r.charCodeAt(o);(c&64512)===56320&&(++o,a=((a&1023)<<10)+(c&1023)+65536)}a&4294901760?(e[n++]=a>>18&7|240,e[n++]=a>>12&63|128,e[n++]=a>>6&63|128):(e[n++]=a>>12&15|224,e[n++]=a>>6&63|128)}else{e[n++]=a;continue}e[n++]=a&63|128}}S.utf8EncodeJs=un;var Oe=bt?new TextEncoder:void 0;S.TEXT_ENCODER_THRESHOLD=bt?typeof process<"u"&&((fr=process==null?void 0:process.env)===null||fr===void 0?void 0:fr.TEXT_ENCODING)!=="force"?200:0:Yr.UINT32_MAX;function pn(r,e,t){e.set(Oe.encode(r),t)}function dn(r,e,t){Oe.encodeInto(r,e.subarray(t))}S.utf8EncodeTE=Oe!=null&&Oe.encodeInto?dn:pn;var hn=4096;function yn(r,e,t){let s=e,n=s+t,o=[],a="";for(;s<n;){let c=r[s++];if(!(c&128))o.push(c);else if((c&224)===192){let p=r[s++]&63;o.push((c&31)<<6|p)}else if((c&240)===224){let p=r[s++]&63,E=r[s++]&63;o.push((c&31)<<12|p<<6|E)}else if((c&248)===240){let p=r[s++]&63,E=r[s++]&63,ee=r[s++]&63,z=(c&7)<<18|p<<12|E<<6|ee;z>65535&&(z-=65536,o.push(z>>>10&1023|55296),z=56320|z&1023),o.push(z)}else o.push(c);o.length>=hn&&(a+=String.fromCharCode(...o),o.length=0)}return o.length>0&&(a+=String.fromCharCode(...o)),a}S.utf8DecodeJs=yn;var fn=bt?new TextDecoder:null;S.TEXT_DECODER_THRESHOLD=bt?typeof process<"u"&&((Rr=process==null?void 0:process.env)===null||Rr===void 0?void 0:Rr.TEXT_DECODER)!=="force"?200:0:Yr.UINT32_MAX;function Rn(r,e,t){let s=r.subarray(e,e+t);return fn.decode(s)}S.utf8DecodeTD=Rn});var gr=_(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.ExtData=void 0;var mr=class{constructor(e,t){this.type=e,this.data=t}};xt.ExtData=mr});var Et=_(vt=>{"use strict";Object.defineProperty(vt,"__esModule",{value:!0});vt.DecodeError=void 0;var de=class extends Error{constructor(e){super(e);let t=Object.create(de.prototype);Object.setPrototypeOf(this,t),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:de.name})}};vt.DecodeError=de});var br=_(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});T.timestampExtension=T.decodeTimestampExtension=T.decodeTimestampToTimeSpec=T.encodeTimestampExtension=T.encodeDateToTimeSpec=T.encodeTimeSpecToTimestamp=T.EXT_TIMESTAMP=void 0;var mn=Et(),es=Ae();T.EXT_TIMESTAMP=-1;var gn=4294967296-1,bn=17179869184-1;function ts({sec:r,nsec:e}){if(r>=0&&e>=0&&r<=bn)if(e===0&&r<=gn){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,r),t}else{let t=r/4294967296,s=r&4294967295,n=new Uint8Array(8),o=new DataView(n.buffer);return o.setUint32(0,e<<2|t&3),o.setUint32(4,s),n}else{let t=new Uint8Array(12),s=new DataView(t.buffer);return s.setUint32(0,e),(0,es.setInt64)(s,4,r),t}}T.encodeTimeSpecToTimestamp=ts;function rs(r){let e=r.getTime(),t=Math.floor(e/1e3),s=(e-t*1e3)*1e6,n=Math.floor(s/1e9);return{sec:t+n,nsec:s-n*1e9}}T.encodeDateToTimeSpec=rs;function ss(r){if(r instanceof Date){let e=rs(r);return ts(e)}else return null}T.encodeTimestampExtension=ss;function ns(r){let e=new DataView(r.buffer,r.byteOffset,r.byteLength);switch(r.byteLength){case 4:return{sec:e.getUint32(0),nsec:0};case 8:{let t=e.getUint32(0),s=e.getUint32(4),n=(t&3)*4294967296+s,o=t>>>2;return{sec:n,nsec:o}}case 12:{let t=(0,es.getInt64)(e,4),s=e.getUint32(0);return{sec:t,nsec:s}}default:throw new mn.DecodeError(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${r.length}`)}}T.decodeTimestampToTimeSpec=ns;function os(r){let e=ns(r);return new Date(e.sec*1e3+e.nsec/1e6)}T.decodeTimestampExtension=os;T.timestampExtension={type:T.EXT_TIMESTAMP,encode:ss,decode:os}});var _t=_(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.ExtensionCodec=void 0;var Pt=gr(),wn=br(),Ie=class{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(wn.timestampExtension)}register({type:e,encode:t,decode:s}){if(e>=0)this.encoders[e]=t,this.decoders[e]=s;else{let n=1+e;this.builtInEncoders[n]=t,this.builtInDecoders[n]=s}}tryToEncode(e,t){for(let s=0;s<this.builtInEncoders.length;s++){let n=this.builtInEncoders[s];if(n!=null){let o=n(e,t);if(o!=null){let a=-1-s;return new Pt.ExtData(a,o)}}}for(let s=0;s<this.encoders.length;s++){let n=this.encoders[s];if(n!=null){let o=n(e,t);if(o!=null){let a=s;return new Pt.ExtData(a,o)}}}return e instanceof Pt.ExtData?e:null}decode(e,t,s){let n=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return n?n(e,t,s):new Pt.ExtData(t,e)}};Tt.ExtensionCodec=Ie;Ie.defaultCodec=new Ie});var wr=_(he=>{"use strict";Object.defineProperty(he,"__esModule",{value:!0});he.createDataView=he.ensureUint8Array=void 0;function is(r){return r instanceof Uint8Array?r:ArrayBuffer.isView(r)?new Uint8Array(r.buffer,r.byteOffset,r.byteLength):r instanceof ArrayBuffer?new Uint8Array(r):Uint8Array.from(r)}he.ensureUint8Array=is;function xn(r){if(r instanceof ArrayBuffer)return new DataView(r);let e=is(r);return new DataView(e.buffer,e.byteOffset,e.byteLength)}he.createDataView=xn});var vr=_(C=>{"use strict";Object.defineProperty(C,"__esModule",{value:!0});C.Encoder=C.DEFAULT_INITIAL_BUFFER_SIZE=C.DEFAULT_MAX_DEPTH=void 0;var Ue=wt(),vn=_t(),as=Ae(),En=wr();C.DEFAULT_MAX_DEPTH=100;C.DEFAULT_INITIAL_BUFFER_SIZE=2048;var xr=class{constructor(e=vn.ExtensionCodec.defaultCodec,t=void 0,s=C.DEFAULT_MAX_DEPTH,n=C.DEFAULT_INITIAL_BUFFER_SIZE,o=!1,a=!1,c=!1,p=!1){this.extensionCodec=e,this.context=t,this.maxDepth=s,this.initialBufferSize=n,this.sortKeys=o,this.forceFloat32=a,this.ignoreUndefined=c,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),s=new Uint8Array(t),n=new DataView(t);s.set(this.bytes),this.view=n,this.bytes=s}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>Ue.TEXT_ENCODER_THRESHOLD){let n=(0,Ue.utf8Count)(e);this.ensureBufferSizeToWrite(5+n),this.writeStringHeader(n),(0,Ue.utf8EncodeTE)(e,this.bytes,this.pos),this.pos+=n}else{let n=(0,Ue.utf8Count)(e);this.ensureBufferSizeToWrite(5+n),this.writeStringHeader(n),(0,Ue.utf8EncodeJs)(e,this.bytes,this.pos),this.pos+=n}}encodeObject(e,t){let s=this.extensionCodec.tryToEncode(e,this.context);if(s!=null)this.encodeExtension(s);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 s=(0,En.ensureUint8Array)(e);this.writeU8a(s)}encodeArray(e,t){let s=e.length;if(s<16)this.writeU8(144+s);else if(s<65536)this.writeU8(220),this.writeU16(s);else if(s<4294967296)this.writeU8(221),this.writeU32(s);else throw new Error(`Too large array: ${s}`);for(let n of e)this.doEncode(n,t+1)}countWithoutUndefined(e,t){let s=0;for(let n of t)e[n]!==void 0&&s++;return s}encodeMap(e,t){let s=Object.keys(e);this.sortKeys&&s.sort();let n=this.ignoreUndefined?this.countWithoutUndefined(e,s):s.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 s){let a=e[o];this.ignoreUndefined&&a===void 0||(this.encodeString(o),this.doEncode(a,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,as.setUint64)(this.view,this.pos,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),(0,as.setInt64)(this.view,this.pos,e),this.pos+=8}};C.Encoder=xr});var ls=_(St=>{"use strict";Object.defineProperty(St,"__esModule",{value:!0});St.encode=void 0;var Pn=vr(),Tn={};function _n(r,e=Tn){return new Pn.Encoder(e.extensionCodec,e.context,e.maxDepth,e.initialBufferSize,e.sortKeys,e.forceFloat32,e.ignoreUndefined,e.forceIntegerToFloat).encodeSharedRef(r)}St.encode=_n});var cs=_(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.prettyByte=void 0;function Sn(r){return`${r<0?"-":""}0x${Math.abs(r).toString(16).padStart(2,"0")}`}Mt.prettyByte=Sn});var us=_(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.CachedKeyDecoder=void 0;var Mn=wt(),kn=16,Dn=16,Er=class{constructor(e=kn,t=Dn){this.maxKeyLength=e,this.maxLengthPerKey=t,this.hit=0,this.miss=0,this.caches=[];for(let s=0;s<this.maxKeyLength;s++)this.caches.push([])}canBeCached(e){return e>0&&e<=this.maxKeyLength}find(e,t,s){let n=this.caches[s-1];e:for(let o of n){let a=o.bytes;for(let c=0;c<s;c++)if(a[c]!==e[t+c])continue e;return o.str}return null}store(e,t){let s=this.caches[e.length-1],n={bytes:e,str:t};s.length>=this.maxLengthPerKey?s[Math.random()*s.length|0]=n:s.push(n)}decode(e,t,s){let n=this.find(e,t,s);if(n!=null)return this.hit++,n;this.miss++;let o=(0,Mn.utf8DecodeJs)(e,t,s),a=Uint8Array.prototype.slice.call(e,t,t+s);return this.store(a,o),o}};kt.CachedKeyDecoder=Er});var Dt=_(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.Decoder=J.DataViewIndexOutOfBoundsError=void 0;var Pr=cs(),Wn=_t(),re=Ae(),Tr=wt(),_r=wr(),An=us(),H=Et(),On=r=>{let e=typeof r;return e==="string"||e==="number"},Ce=-1,Mr=new DataView(new ArrayBuffer(0)),In=new Uint8Array(Mr.buffer);J.DataViewIndexOutOfBoundsError=(()=>{try{Mr.getInt8(0)}catch(r){return r.constructor}throw new Error("never reached")})();var ps=new J.DataViewIndexOutOfBoundsError("Insufficient data"),Un=new An.CachedKeyDecoder,Sr=class{constructor(e=Wn.ExtensionCodec.defaultCodec,t=void 0,s=re.UINT32_MAX,n=re.UINT32_MAX,o=re.UINT32_MAX,a=re.UINT32_MAX,c=re.UINT32_MAX,p=Un){this.extensionCodec=e,this.context=t,this.maxStrLength=s,this.maxBinLength=n,this.maxArrayLength=o,this.maxMapLength=a,this.maxExtLength=c,this.keyDecoder=p,this.totalPos=0,this.pos=0,this.view=Mr,this.bytes=In,this.headByte=Ce,this.stack=[]}reinitializeState(){this.totalPos=0,this.headByte=Ce,this.stack.length=0}setBuffer(e){this.bytes=(0,_r.ensureUint8Array)(e),this.view=(0,_r.createDataView)(this.bytes),this.pos=0}appendBuffer(e){if(this.headByte===Ce&&!this.hasRemaining(1))this.setBuffer(e);else{let t=this.bytes.subarray(this.pos),s=(0,_r.ensureUint8Array)(e),n=new Uint8Array(t.length+s.length);n.set(t),n.set(s,t.length),this.setBuffer(n)}}hasRemaining(e){return this.view.byteLength-this.pos>=e}createExtraByteError(e){let{view:t,pos:s}=this;return new RangeError(`Extra ${t.byteLength-s} 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,s;for await(let c of e){if(t)throw this.createExtraByteError(this.totalPos);this.appendBuffer(c);try{s=this.doDecodeSync(),t=!0}catch(p){if(!(p instanceof J.DataViewIndexOutOfBoundsError))throw p}this.totalPos+=this.pos}if(t){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return s}let{headByte:n,pos:o,totalPos:a}=this;throw new RangeError(`Insufficient data in parsing ${(0,Pr.prettyByte)(n)} at ${a} (${o} in the current buffer)`)}decodeArrayStream(e){return this.decodeMultiAsync(e,!0)}decodeStream(e){return this.decodeMultiAsync(e,!1)}async*decodeMultiAsync(e,t){let s=t,n=-1;for await(let o of e){if(t&&n===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(o),s&&(n=this.readArraySize(),s=!1,this.complete());try{for(;yield this.doDecodeSync(),--n!==0;);}catch(a){if(!(a instanceof J.DataViewIndexOutOfBoundsError))throw a}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 H.DecodeError(`Unrecognized type byte: ${(0,Pr.prettyByte)(e)}`);this.complete();let s=this.stack;for(;s.length>0;){let n=s[s.length-1];if(n.type===0)if(n.array[n.position]=t,n.position++,n.position===n.size)s.pop(),t=n.array;else continue e;else if(n.type===1){if(!On(t))throw new H.DecodeError("The type of key must be string or number but "+typeof t);if(t==="__proto__")throw new H.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)s.pop(),t=n.map;else{n.key=null,n.type=1;continue e}}return t}}readHeadByte(){return this.headByte===Ce&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=Ce}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 H.DecodeError(`Unrecognized array type byte: ${(0,Pr.prettyByte)(e)}`)}}}pushMapState(e){if(e>this.maxMapLength)throw new H.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 H.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 s;if(e>this.maxStrLength)throw new H.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()&&(!((s=this.keyDecoder)===null||s===void 0)&&s.canBeCached(e))?o=this.keyDecoder.decode(this.bytes,n,e):e>Tr.TEXT_DECODER_THRESHOLD?o=(0,Tr.utf8DecodeTD)(this.bytes,n,e):o=(0,Tr.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 H.DecodeError(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+t))throw ps;let s=this.pos+t,n=this.bytes.subarray(s,s+e);return this.pos+=t+e,n}decodeExtension(e,t){if(e>this.maxExtLength)throw new H.DecodeError(`Max length exceeded: ext length (${e}) > maxExtLength (${this.maxExtLength})`);let s=this.view.getInt8(this.pos+t),n=this.decodeBinary(e,t+1);return this.extensionCodec.decode(n,s,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,re.getUint64)(this.view,this.pos);return this.pos+=8,e}readI64(){let e=(0,re.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}};J.Decoder=Sr});var kr=_(N=>{"use strict";Object.defineProperty(N,"__esModule",{value:!0});N.decodeMulti=N.decode=N.defaultDecodeOptions=void 0;var ds=Dt();N.defaultDecodeOptions={};function Cn(r,e=N.defaultDecodeOptions){return new ds.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decode(r)}N.decode=Cn;function Nn(r,e=N.defaultDecodeOptions){return new ds.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeMulti(r)}N.decodeMulti=Nn});var fs=_($=>{"use strict";Object.defineProperty($,"__esModule",{value:!0});$.ensureAsyncIterable=$.asyncIterableFromStream=$.isAsyncIterable=void 0;function hs(r){return r[Symbol.asyncIterator]!=null}$.isAsyncIterable=hs;function Ln(r){if(r==null)throw new Error("Assertion Failure: value must not be null nor undefined")}async function*ys(r){let e=r.getReader();try{for(;;){let{done:t,value:s}=await e.read();if(t)return;Ln(s),yield s}}finally{e.releaseLock()}}$.asyncIterableFromStream=ys;function jn(r){return hs(r)?r:ys(r)}$.ensureAsyncIterable=jn});var ms=_(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.decodeStream=L.decodeMultiStream=L.decodeArrayStream=L.decodeAsync=void 0;var Dr=Dt(),Wr=fs(),Wt=kr();async function Bn(r,e=Wt.defaultDecodeOptions){let t=(0,Wr.ensureAsyncIterable)(r);return new Dr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeAsync(t)}L.decodeAsync=Bn;function Fn(r,e=Wt.defaultDecodeOptions){let t=(0,Wr.ensureAsyncIterable)(r);return new Dr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeArrayStream(t)}L.decodeArrayStream=Fn;function Rs(r,e=Wt.defaultDecodeOptions){let t=(0,Wr.ensureAsyncIterable)(r);return new Dr.Decoder(e.extensionCodec,e.context,e.maxStrLength,e.maxBinLength,e.maxArrayLength,e.maxMapLength,e.maxExtLength).decodeStream(t)}L.decodeMultiStream=Rs;function qn(r,e=Wt.defaultDecodeOptions){return Rs(r,e)}L.decodeStream=qn});var Ot=_(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 Vn=ls();Object.defineProperty(h,"encode",{enumerable:!0,get:function(){return Vn.encode}});var gs=kr();Object.defineProperty(h,"decode",{enumerable:!0,get:function(){return gs.decode}});Object.defineProperty(h,"decodeMulti",{enumerable:!0,get:function(){return gs.decodeMulti}});var At=ms();Object.defineProperty(h,"decodeAsync",{enumerable:!0,get:function(){return At.decodeAsync}});Object.defineProperty(h,"decodeArrayStream",{enumerable:!0,get:function(){return At.decodeArrayStream}});Object.defineProperty(h,"decodeMultiStream",{enumerable:!0,get:function(){return At.decodeMultiStream}});Object.defineProperty(h,"decodeStream",{enumerable:!0,get:function(){return At.decodeStream}});var bs=Dt();Object.defineProperty(h,"Decoder",{enumerable:!0,get:function(){return bs.Decoder}});Object.defineProperty(h,"DataViewIndexOutOfBoundsError",{enumerable:!0,get:function(){return bs.DataViewIndexOutOfBoundsError}});var Hn=Et();Object.defineProperty(h,"DecodeError",{enumerable:!0,get:function(){return Hn.DecodeError}});var Jn=vr();Object.defineProperty(h,"Encoder",{enumerable:!0,get:function(){return Jn.Encoder}});var zn=_t();Object.defineProperty(h,"ExtensionCodec",{enumerable:!0,get:function(){return zn.ExtensionCodec}});var Xn=gr();Object.defineProperty(h,"ExtData",{enumerable:!0,get:function(){return Xn.ExtData}});var ye=br();Object.defineProperty(h,"EXT_TIMESTAMP",{enumerable:!0,get:function(){return ye.EXT_TIMESTAMP}});Object.defineProperty(h,"encodeDateToTimeSpec",{enumerable:!0,get:function(){return ye.encodeDateToTimeSpec}});Object.defineProperty(h,"encodeTimeSpecToTimestamp",{enumerable:!0,get:function(){return ye.encodeTimeSpecToTimestamp}});Object.defineProperty(h,"decodeTimestampToTimeSpec",{enumerable:!0,get:function(){return ye.decodeTimestampToTimeSpec}});Object.defineProperty(h,"encodeTimestampExtension",{enumerable:!0,get:function(){return ye.encodeTimestampExtension}});Object.defineProperty(h,"decodeTimestampExtension",{enumerable:!0,get:function(){return ye.decodeTimestampExtension}})});var Eo={};en(Eo,{ChannelType:()=>D,Console:()=>nr,Shelter:()=>ht,WebR:()=>dt,WebRChannelError:()=>v,WebRError:()=>O,WebRPayloadError:()=>q,WebRWorkerError:()=>We,isRCall:()=>po,isRCharacter:()=>lo,isRComplex:()=>ao,isRDouble:()=>io,isREnvironment:()=>so,isRFunction:()=>Lr,isRInteger:()=>oo,isRList:()=>co,isRLogical:()=>no,isRNull:()=>eo,isRObject:()=>g,isRPairlist:()=>ro,isRRaw:()=>uo,isRSymbol:()=>to});module.exports=tn(Eo);var O=class extends Error{constructor(e){super(e),this.name=this.constructor.name,Object.setPrototypeOf(this,new.target.prototype)}},We=class extends O{},v=class extends O{},q=class extends O{};var m=typeof process<"u"&&process.release&&process.release.name==="node",hr;if(globalThis.document)hr=r=>new Promise((e,t)=>{let s=document.createElement("script");s.src=r,s.onload=()=>e(),s.onerror=t,document.head.appendChild(s)});else if(globalThis.importScripts)hr=async r=>{try{globalThis.importScripts(r)}catch(e){if(e instanceof TypeError)await Promise.resolve().then(()=>te(require(r)));else throw e}};else if(m)hr=async r=>{let e=(await Promise.resolve().then(()=>te(require("path")))).default;await Promise.resolve().then(()=>te(require(e.resolve(r))))};else throw new O("Cannot determine runtime environment");function V(){let r={resolve:t=>{},reject:t=>{},promise:null},e=new Promise((t,s)=>{r.resolve=t,r.reject=s});return r.promise=e,r}function Qr(r){return new Promise(e=>setTimeout(e,r))}function U(r,e,t,...s){return r===null||typeof r!="object"?r:e(r)?t(r,...s):Array.isArray(r)||ArrayBuffer.isView(r)?r.map(n=>U(n,e,t,...s)):Object.fromEntries(Object.entries(r).map(([n,o],a)=>[n,U(o,e,t,...s)]))}function pe(r,e){let t=new XMLHttpRequest;t.open("get",r,!0),t.onload=()=>{let s=new Worker(URL.createObjectURL(new Blob([t.responseText])));e(s)},t.send()}function X(r){if(m)return!1;let e=new URL(location.href),t=new URL(r,location.origin);return!(e.host===t.host&&e.port===t.port&&e.protocol===t.protocol)}var rn=new WeakMap;function Zr(r,e){return rn.set(r,e),r}var mt=63;function gt(){let r=Array.from({length:4},sn).join("-");if(r.length!==mt)throw new Error("comlink internal error: UUID has the wrong length");return r}function sn(){let r=Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16),e=15-r.length;return e>0&&(r=Array.from({length:e},()=>0).join("")+r),r}var xs=te(Ot());var $n=new TextEncoder;async function vs(r,e,t){try{let{taskId:s,sizeBuffer:n,dataBuffer:o,signalBuffer:a}=e,c=(0,xs.encode)(t),p=c.length<=o.length;if(Atomics.store(n,0,c.length),Atomics.store(n,1,+p),!p){let[E,ee]=Gn(r);o.set($n.encode(E)),await ws(a,s),o=(await ee).dataBuffer}o.set(c),Atomics.store(n,1,1),await ws(a,s)}catch(s){console.warn(s)}}function Gn(r){let e=gt();return[e,new Promise(t=>{m?r.once("message",s=>{!s.id||s.id!==e||t(s)}):r.addEventListener("message",function s(n){!n.data||!n.data.id||n.data.id!==e||(r.removeEventListener("message",s),t(n.data))}),r.start&&r.start()})]}async function ws(r,e){let t=(e>>1)%32,s=1;for(;Atomics.compareExchange(r,t+1,0,e)!==0;)await Qr(s),s<32&&(s*=2);Atomics.or(r,0,1<<t),Atomics.notify(r,0)}var j,B,Ne,Ar,fe=class{constructor(){u(this,Ne);u(this,j,void 0);u(this,B,void 0);d(this,B,[]),d(this,j,[])}reset(){d(this,B,[]),d(this,j,[])}put(e){i(this,B).length||x(this,Ne,Ar).call(this),i(this,B).shift()(e)}async get(){return i(this,j).length||x(this,Ne,Ar).call(this),i(this,j).shift()}isEmpty(){return!i(this,j).length}isBlocked(){return!!i(this,B).length}get length(){return i(this,j).length-i(this,B).length}};j=new WeakMap,B=new WeakMap,Ne=new WeakSet,Ar=function(){i(this,j).push(new Promise(e=>{i(this,B).push(e)}))};function Re(r,e){return Es({type:"request",data:{uuid:gt(),msg:r}},e)}function Le(r,e,t){return Es({type:"response",data:{uuid:r,resp:e}},t)}function Es(r,e){return e&&Zr(r,e),r}function Ps(r,e){return{type:"sync-request",data:{msg:r,reqData:e}}}function Ts(r){let e=new We(r.obj.message);return r.obj.name!=="Error"&&(e.name=r.obj.name),e.stack=r.obj.stack,e}function Kn(r){return r&&typeof r=="object"&&"payloadType"in r&&"obj"in r}function Ct(r){return Kn(r)&&r.payloadType==="ptr"}var me,G=class{constructor(){this.inputQueue=new fe;this.outputQueue=new fe;this.systemQueue=new fe;u(this,me,new Map)}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){this.inputQueue.put(e)}async request(e,t){let s=Re(e,t),{resolve:n,reject:o,promise:a}=V();return i(this,me).set(s.data.uuid,{resolve:n,reject:o}),this.write(s),a}putClosedMessage(){this.outputQueue.put({type:"closed"})}resolveResponse(e){let t=e.data.uuid,s=i(this,me).get(t);if(s){let n=e.data.resp;i(this,me).delete(t),n.payloadType==="err"?s.reject(Ts(n)):s.resolve(n)}else console.warn("Can't find request.")}};me=new WeakMap;var Ss=te(Ot());var Zn=new TextDecoder("utf-8"),ge,be,je,Be,we,Lt=class{constructor(e,t,s=[]){u(this,ge,!1);u(this,be,void 0);u(this,je,void 0);u(this,Be,void 0);u(this,we,void 0);this.syncifier=new Or;this.endpoint=e,this.msg=t,this.transfers=s,d(this,be,!1)}scheduleSync(){if(!i(this,ge))return d(this,ge,!0),this.syncifier.scheduleTask(this),d(this,we,this.doSync()),i(this,we).next(),this}poll(){if(!i(this,ge))throw new Error("Task not synchronously scheduled");let{done:e,value:t}=i(this,we).next();return e?(d(this,be,!0),d(this,je,t),!0):!1}*doSync(){let{endpoint:e,msg:t,transfers:s}=this,n=new Int32Array(new SharedArrayBuffer(8)),o=this.signalBuffer,a=this.taskId,c=_s(mt),p=Ps(t,{sizeBuffer:n,dataBuffer:c,signalBuffer:o,taskId:a});if(e.postMessage(p,s),yield,Atomics.load(n,1)===0){let ee=Zn.decode(c.slice(0,mt));Yn(c);let z=Atomics.load(n,0);c=_s(z),e.postMessage({id:ee,dataBuffer:c}),yield}let E=Atomics.load(n,0);return(0,Ss.decode)(c.slice(0,E))}get result(){if(i(this,Be))throw i(this,Be);if(i(this,be))return i(this,je);throw new Error("Not ready.")}syncify(){return this.scheduleSync(),this.syncifier.syncifyTask(this),this.result}};ge=new WeakMap,be=new WeakMap,je=new WeakMap,Be=new WeakMap,we=new WeakMap;var Or=class{constructor(){this.nextTaskId=new Int32Array([1]),this.signalBuffer=new Int32Array(new SharedArrayBuffer(32*4+4)),this.tasks=new Map}scheduleTask(e){e.taskId=this.nextTaskId[0],this.nextTaskId[0]+=2,e.signalBuffer=this.signalBuffer,this.tasks.set(e.taskId,e)}waitOnSignalBuffer(){for(;;)switch(Atomics.wait(this.signalBuffer,0,0,50)){case"ok":case"not-equal":return;case"timed-out":Ir[0]!==0&&Ms();break;default:throw new Error("Unreachable")}}*tasksIdsToWakeup(){let e=Atomics.load(this.signalBuffer,0);for(let t=0;t<32;t++){let s=1<<t;e&s&&(Atomics.and(this.signalBuffer,0,~s),yield Atomics.exchange(this.signalBuffer,t+1,0))}}pollTasks(e){let t=!1;for(let s of this.tasksIdsToWakeup()){let n=this.tasks.get(s);if(!n)throw new Error(`Assertion error: unknown taskId ${s}.`);n.poll()&&(this.tasks.delete(s),n===e&&(t=!0))}return t}syncifyTask(e){for(;;)if(this.waitOnSignalBuffer(),this.pollTasks(e))return}},Nt=[];function _s(r){let e=Math.ceil(Math.log2(r));Nt[e]||(Nt[e]=[]);let t=Nt[e].pop();return t?(t.fill(0),t):new Uint8Array(new SharedArrayBuffer(2**e))}function Yn(r){let e=Math.ceil(Math.log2(r.byteLength));Nt[e].push(r)}var Ir=new Int32Array(new ArrayBuffer(4)),Ms=()=>{throw Ir[0]=0,new Error("Interrupted!")};function ks(r){Ms=r}function Ds(r){Ir=new Int32Array(r)}var l={};function Ws(r){Object.keys(r).forEach(e=>l._free(r[e]))}m&&(globalThis.Worker=require("worker_threads").Worker);var xe,jt,As,qe,Fe=class extends G{constructor(t){super();u(this,jt);u(this,xe,void 0);this.close=()=>{};u(this,qe,async(t,s)=>{if(!(!s||!s.type))switch(s.type){case"resolve":d(this,xe,new Int32Array(s.data)),this.resolve();return;case"response":this.resolveResponse(s);return;case"system":this.systemQueue.put(s.data);return;default:this.outputQueue.put(s);return;case"sync-request":{let n=s,o=n.data.msg,a=n.data.reqData;switch(o.type){case"read":{let c=await this.inputQueue.get();await vs(t,a,c);break}default:throw new v(`Unsupported request type '${o.type}'.`)}return}case"request":throw new v("Can't send messages of type 'request' from a worker. Please Use 'sync-request' instead.")}});let s=n=>{x(this,jt,As).call(this,n),this.close=()=>{n.terminate(),this.putClosedMessage()};let o={type:"init",data:{config:t,channelType:D.SharedArrayBuffer}};n.postMessage(o)};if(X(t.baseUrl))pe(`${t.baseUrl}webr-worker.js`,n=>s(n));else{let n=new Worker(`${t.baseUrl}webr-worker.js`);s(n)}({resolve:this.resolve,promise:this.initialised}=V())}interrupt(){if(!i(this,xe))throw new v("Failed attempt to interrupt before initialising interruptBuffer");this.inputQueue.reset(),i(this,xe)[0]=1}};xe=new WeakMap,jt=new WeakSet,As=function(t){m?t.on("message",s=>{i(this,qe).call(this,t,s)}):t.onmessage=s=>i(this,qe).call(this,t,s.data)},qe=new WeakMap;var se,Ve,ne,He,Ur=class{constructor(){u(this,se,void 0);u(this,Ve,()=>0);u(this,ne,new Int32Array(new SharedArrayBuffer(4)));u(this,He,()=>{});this.onMessageFromMainThread=()=>{};d(this,se,m?require("worker_threads").parentPort:globalThis),Ds(i(this,ne).buffer),ks(()=>this.handleInterrupt())}resolve(){this.write({type:"resolve",data:i(this,ne).buffer})}write(e,t){i(this,se).postMessage(e,t)}writeSystem(e,t){i(this,se).postMessage({type:"system",data:e},t)}read(){let e={type:"read"};return new Lt(i(this,se),e).syncify()}inputOrDispatch(){for(;;){let e=this.read();if(e.type==="stdin")return l.allocateUTF8(e.data);i(this,Ve).call(this,e)}}run(e){l.callMain(e)}setInterrupt(e){d(this,He,e)}handleInterrupt(){i(this,ne)[0]!==0&&(i(this,ne)[0]=0,i(this,He).call(this))}setDispatchHandler(e){d(this,Ve,e)}};se=new WeakMap,Ve=new WeakMap,ne=new WeakMap,He=new WeakMap;var Vt=te(Ot());m&&(globalThis.Worker=require("worker_threads").Worker);var ve,oe,Ee,Bt,Os,Ft,Is,qt,Us,ze,Je=class extends G{constructor(t){super();u(this,Bt);u(this,Ft);u(this,qt);this.close=()=>{};u(this,ve,new Map);u(this,oe,void 0);u(this,Ee,!1);u(this,ze,async(t,s)=>{if(!(!s||!s.type))switch(s.type){case"resolve":this.resolve();return;case"response":this.resolveResponse(s);return;case"system":this.systemQueue.put(s.data);return;default:this.outputQueue.put(s);return;case"sync-request":{let n=s.data;i(this,ve).set(n.data.uuid,n.data.msg);return}case"request":throw new v("Can't send messages of type 'request' from a worker.Use service worker fetch request instead.")}});let s=n=>{x(this,qt,Us).call(this,n),this.close=()=>{n.terminate(),this.putClosedMessage()},x(this,Bt,Os).call(this,`${t.serviceWorkerUrl}webr-serviceworker.js`).then(o=>{let a={type:"init",data:{config:t,channelType:D.ServiceWorker,clientId:o,location:window.location.href}};n.postMessage(a)})};if(X(t.serviceWorkerUrl))pe(`${t.serviceWorkerUrl}webr-worker.js`,n=>s(n));else{let n=new Worker(`${t.serviceWorkerUrl}webr-worker.js`);s(n)}({resolve:this.resolve,promise:this.initialised}=V())}activeRegistration(){var t;if(!((t=i(this,oe))!=null&&t.active))throw new v("Attempted to obtain a non-existent active registration.");return i(this,oe).active}interrupt(){d(this,Ee,!0)}};ve=new WeakMap,oe=new WeakMap,Ee=new WeakMap,Bt=new WeakSet,Os=async function(t){d(this,oe,await navigator.serviceWorker.register(t)),await navigator.serviceWorker.ready,window.addEventListener("beforeunload",()=>{var n;(n=i(this,oe))==null||n.unregister()});let s=await new Promise(n=>{navigator.serviceWorker.addEventListener("message",function o(a){a.data.type==="registration-successful"&&(navigator.serviceWorker.removeEventListener("message",o),n(a.data.clientId))}),this.activeRegistration().postMessage({type:"register-client-main"})});return navigator.serviceWorker.addEventListener("message",n=>{x(this,Ft,Is).call(this,n)}),s},Ft=new WeakSet,Is=async function(t){if(t.data.type==="request"){let s=t.data.data,n=i(this,ve).get(s);if(!n)throw new v("Request not found during service worker XHR request");switch(i(this,ve).delete(s),n.type){case"read":{let o=await this.inputQueue.get();this.activeRegistration().postMessage({type:"wasm-webr-fetch-response",uuid:s,response:Le(s,o)});break}case"interrupt":{let o=i(this,Ee);this.activeRegistration().postMessage({type:"wasm-webr-fetch-response",uuid:s,response:Le(s,o)}),this.inputQueue.reset(),d(this,Ee,!1);break}default:throw new v(`Unsupported request type '${n.type}'.`)}return}},qt=new WeakSet,Us=function(t){m?t.on("message",s=>{i(this,ze).call(this,t,s)}):t.onmessage=s=>i(this,ze).call(this,t,s.data)},ze=new WeakMap;var Pe,Xe,$e,Ge,Ke,Qe,Cr=class{constructor(e){u(this,Pe,void 0);u(this,Xe,void 0);u(this,$e,void 0);u(this,Ge,Date.now());u(this,Ke,()=>0);u(this,Qe,()=>{});this.onMessageFromMainThread=()=>{};if(!e.clientId||!e.location)throw new v("Can't start service worker channel");d(this,Xe,e.clientId),d(this,$e,e.location),d(this,Pe,m?require("worker_threads").parentPort:globalThis)}resolve(){this.write({type:"resolve"})}write(e,t){i(this,Pe).postMessage(e,t)}writeSystem(e,t){i(this,Pe).postMessage({type:"system",data:e},t)}syncRequest(e){let t=Re(e);this.write({type:"sync-request",data:t});let s=0;for(;;)try{let n=new URL("__wasm__/webr-fetch-request/",i(this,$e)),o=new XMLHttpRequest;o.timeout=6e4,o.responseType="arraybuffer",o.open("POST",n,!1);let a={clientId:i(this,Xe),uuid:t.data.uuid};return o.send((0,Vt.encode)(a)),(0,Vt.decode)(o.response)}catch(n){if(n instanceof DOMException&&s++<1e3)console.log("Service worker request failed - resending request");else throw n}}read(){return this.syncRequest({type:"read"}).data.resp}inputOrDispatch(){for(;;){let e=this.read();if(e.type==="stdin")return l.allocateUTF8(e.data);i(this,Ke).call(this,e)}}run(e){l.callMain(e)}setInterrupt(e){d(this,Qe,e)}handleInterrupt(){Date.now()>i(this,Ge)+1e3&&(d(this,Ge,Date.now()),this.syncRequest({type:"interrupt"}).data.resp&&i(this,Qe).call(this))}setDispatchHandler(e){d(this,Ke,e)}};Pe=new WeakMap,Xe=new WeakMap,$e=new WeakMap,Ge=new WeakMap,Ke=new WeakMap,Qe=new WeakMap;m&&(globalThis.Worker=require("worker_threads").Worker);var Te,Jt,Cs,Ze,Ht=class extends G{constructor(t){super();u(this,Jt);this.close=()=>{};u(this,Te,void 0);u(this,Ze,async(t,s)=>{if(!(!s||!s.type))switch(s.type){case"resolve":this.resolve();return;case"response":this.resolveResponse(s);return;case"system":this.systemQueue.put(s.data);return;default:this.outputQueue.put(s);return;case"request":{let n=s,o=n.data.msg;switch(o.type){case"read":{let a=await this.inputQueue.get();if(i(this,Te)){let c=Le(n.data.uuid,a);i(this,Te).postMessage(c)}break}default:throw new v(`Unsupported request type '${o.type}'.`)}return}case"sync-request":throw new v("Can't send messages of type 'sync-request' in PostMessage mode. Use 'request' instead.")}});let s=n=>{d(this,Te,n),x(this,Jt,Cs).call(this,n),this.close=()=>n.terminate();let o={type:"init",data:{config:t,channelType:D.PostMessage}};n.postMessage(o)};if(X(t.baseUrl))pe(`${t.baseUrl}webr-worker.js`,n=>s(n));else{let n=new Worker(`${t.baseUrl}webr-worker.js`);s(n)}({resolve:this.resolve,promise:this.initialised}=V())}interrupt(){console.error("Interrupting R execution is not available when using the PostMessage channel")}};Te=new WeakMap,Jt=new WeakSet,Cs=function(t){m?t.on("message",s=>{i(this,Ze).call(this,t,s)}):t.onmessage=s=>i(this,Ze).call(this,t,s.data)},Ze=new WeakMap;var _e,Se,Ye,ie,et,zt,Nr=class{constructor(){u(this,_e,void 0);u(this,Se,new Map);u(this,Ye,()=>0);u(this,ie,0);u(this,et,()=>{});u(this,zt,async()=>{for(;;)try{d(this,ie,0);let e=await this.request({type:"read"});if(e.type==="stdin"){let t=Module.allocateUTF8(e.data);Module._strcpy(Module._DLLbuf,t),Module.setValue(Module._DLLbufp,Module._DLLbuf,"*"),Module._free(t);try{for(;Module._R_ReplDLLdo1()>0;);}catch(s){if(s instanceof WebAssembly.Exception)Module._R_ReplDLLinit(),Module._R_ReplDLLdo1();else throw s}}else i(this,Ye).call(this,e)}catch(e){if(!(e instanceof WebAssembly.Exception))throw e}});d(this,_e,m?require("worker_threads").parentPort:globalThis)}resolve(){this.write({type:"resolve"})}write(e,t){i(this,_e).postMessage(e,t)}writeSystem(e,t){i(this,_e).postMessage({type:"system",data:e},t)}read(){throw new v("Unable to synchronously read when using the `PostMessage` channel.")}inputOrDispatch(){return i(this,ie)>10?i(this,et).call(this):i(this,ie)>0&&this.writeSystem({type:"console.error",data:"Nested REPL prompts are not available when using the `PostMessage` channel."}),Kr(this,ie)._++,0}run(e){let t=e||[];t.unshift("R");let s=t.length,n=Module._malloc(4*(s+1));t.forEach((o,a)=>{let c=n+4*a,p=Module.allocateUTF8(o);Module.setValue(c,p,"*")}),this.writeSystem({type:"console.warn",data:"WebR is using `PostMessage` communication channel, nested R REPLs are not available."}),Module._Rf_initialize_R(s,n),Module._setup_Rmainloop(),Module._R_ReplDLLinit(),Module._R_ReplDLLdo1(),i(this,zt).call(this)}setDispatchHandler(e){d(this,Ye,e)}async request(e,t){let s=Re(e,t),{resolve:n,promise:o}=V();return i(this,Se).set(s.data.uuid,n),this.write(s),o}setInterrupt(e){d(this,et,e)}handleInterrupt(){}onMessageFromMainThread(e){let t=e,s=t.data.uuid,n=i(this,Se).get(s);n?(i(this,Se).delete(s),n(t.data.resp)):console.warn("Can't find request.")}};_e=new WeakMap,Se=new WeakMap,Ye=new WeakMap,ie=new WeakMap,et=new WeakMap,zt=new WeakMap;var D={Automatic:0,SharedArrayBuffer:1,ServiceWorker:2,PostMessage:3};function Ns(r){switch(r.channelType){case D.SharedArrayBuffer:return new Fe(r);case D.ServiceWorker:return new Je(r);case D.PostMessage:return new Ht(r);case D.Automatic:default:if(typeof SharedArrayBuffer<"u")return new Fe(r);if("serviceWorker"in navigator&&!X(r.serviceWorkerUrl))return new Je(r);throw new v("Can't initialise main thread communication channel")}}var Ls=m?__dirname+"/":"./",js="https://repo.r-wasm.org";function g(r){return r&&(typeof r=="object"||typeof r=="function")&&"payloadType"in r&&Ct(r._payload)}function eo(r){return g(r)&&r._payload.obj.type==="null"}function to(r){return g(r)&&r._payload.obj.type==="symbol"}function ro(r){return g(r)&&r._payload.obj.type==="pairlist"}function so(r){return g(r)&&r._payload.obj.type==="environment"}function no(r){return g(r)&&r._payload.obj.type==="logical"}function oo(r){return g(r)&&r._payload.obj.type==="integer"}function io(r){return g(r)&&r._payload.obj.type==="double"}function ao(r){return g(r)&&r._payload.obj.type==="complex"}function lo(r){return g(r)&&r._payload.obj.type==="character"}function co(r){return g(r)&&r._payload.obj.type==="list"}function uo(r){return g(r)&&r._payload.obj.type==="raw"}function po(r){return g(r)&&r._payload.obj.type==="call"}function Lr(r){var e;return!!(g(r)&&((e=r._payload.obj.methods)!=null&&e.includes("exec")))}var f={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 jr(r){return r&&typeof r=="object"&&Object.keys(f).includes(r.type)}function Br(r){return r&&typeof r=="object"&&"re"in r&&"im"in r}function Xt(r){return l._Rf_protect(F(r)),r}function M(r,e){return l._Rf_protect(F(r)),++e.n,r}function Bs(r){let e=l._malloc(4);return l._R_ProtectWithIndex(F(r),e),{loc:l.getValue(e,"i32"),ptr:e}}function Fs(r){l._Rf_unprotect(1),l._free(r.ptr)}function qs(r,e){return l._R_Reprotect(F(r),e.loc),r}function W(r){l._Rf_unprotect(r)}function Fr(r,e,t){l._Rf_defineVar(F(e),F(t),F(r))}function Vs(r,e){let t={},s={n:0};try{let n=new rt(e);M(n,s),t.code=l.allocateUTF8(r);let o=l._R_ParseEvalString(t.code,n.ptr);return y.wrap(o)}finally{Ws(t),W(s.n)}}function tt(r,e){return l.getWasmTableEntry(l.GOT.ffi_safe_eval.value)(F(r),F(e))}function F(r){return Ro(r)?r.ptr:r}function ue(r,e){if(l._TYPEOF(r.ptr)!==f[e])throw new Error(`Unexpected object type "${r.type()}" when expecting type "${e}"`)}function yo(r){if(jr(r))return new(Hs(f[r.type]))(r);if(r&&typeof r=="object"&&"type"in r&&r.type==="null")return new Qt;if(r===null)return new le({type:"logical",names:null,values:[null]});if(typeof r=="boolean")return new le(r);if(typeof r=="number")return new st(r);if(typeof r=="string")return new K(r);if(Br(r))return new nt(r);if(Array.isArray(r))return fo(r);throw new Error("Robj construction for this JS object is not yet supported")}function fo(r){let e={n:0};try{let t=new ce([new Q("c"),...r]);return M(t,e),t.eval()}finally{W(e.n)}}var P=class{constructor(e){this.ptr=e}type(){let e=l._TYPEOF(this.ptr);return Object.keys(f).find(s=>f[s]===e)}},ke,$t,ae=class extends P{constructor(t){if(!(t instanceof P))return yo(t);super(t.ptr);u(this,ke)}static wrap(t){let s=l._TYPEOF(t);return new(Hs(s))(new P(t))}get[Symbol.toStringTag](){return`RObject:${this.type()}`}static getPersistentObject(t){return k[t]}getPropertyValue(t){return this[t]}inspect(){Vs(".Internal(inspect(x))",{x:this})}isNull(){return l._TYPEOF(this.ptr)===f.null}isUnbound(){return this.ptr===k.unboundValue.ptr}attrs(){return De.wrap(l._ATTRIB(this.ptr))}setNames(t){let s;if(t===null)s=k.null;else if(Array.isArray(t)&&t.every(n=>typeof n=="string"||n===null))s=new K(t);else throw new Error("Argument to setNames must be null or an Array of strings or null");return l._Rf_setAttrib(this.ptr,k.namesSymbol.ptr,s.ptr),this}names(){let t=K.wrap(l._Rf_getAttrib(this.ptr,k.namesSymbol.ptr));return t.isNull()?null:t.toArray()}includes(t){let s=this.names();return s&&s.includes(t)}toJs(t={depth:0},s=1){throw new Error("This R object cannot be converted to JS")}subset(t){return x(this,ke,$t).call(this,t,k.bracketSymbol.ptr)}get(t){return x(this,ke,$t).call(this,t,k.bracket2Symbol.ptr)}getDollar(t){return x(this,ke,$t).call(this,t,k.dollarSymbol.ptr)}pluck(...t){let s=Bs(k.null);try{let n=(a,c)=>{let p=a.get(c);return qs(p,s)},o=t.reduce(n,this);return o.isNull()?void 0:o}finally{Fs(s)}}set(t,s){let n={n:0};try{let o=new ae(t);M(o,n);let a=new ae(s);M(a,n);let c=new Q("[[<-"),p=l._Rf_lang4(c.ptr,this.ptr,o.ptr,a.ptr);return M(p,n),ae.wrap(tt(p,k.baseEnv))}finally{W(n.n)}}static getMethods(t){let s=new Set,n=t;do Object.getOwnPropertyNames(n).map(o=>s.add(o));while(n=Object.getPrototypeOf(n));return[...s.keys()].filter(o=>typeof t[o]=="function")}},y=ae;ke=new WeakSet,$t=function(t,s){let n={n:0};try{let o=new ae(t);M(o,n);let a=l._Rf_lang3(s,this.ptr,o.ptr);return M(a,n),ae.wrap(tt(a,k.baseEnv))}finally{W(n.n)}};var Qt=class extends y{constructor(){return super(new P(l.getValue(l._R_NilValue,"*"))),this}toJs(){return{type:"null"}}},Q=class extends y{constructor(e){if(e instanceof P){ue(e,"symbol"),super(e);return}let t=l.allocateUTF8(e);try{super(new P(l._Rf_install(t)))}finally{l._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 ot.wrap(l._PRINTNAME(this.ptr))}symvalue(){return y.wrap(l._SYMVALUE(this.ptr))}internal(){return y.wrap(l._INTERNAL(this.ptr))}},De=class extends y{constructor(e){if(e instanceof P)return ue(e,"pairlist"),super(e),this;let t={n:0};try{let{names:s,values:n}=it(e),o=De.wrap(l._Rf_allocList(n.length));M(o,t);for(let[a,c]=[0,o];!c.isNull();[a,c]=[a+1,c.cdr()])c.setcar(new y(n[a]));o.setNames(s),super(o)}finally{W(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:s=1}={}){let n=this.entries({depth:s}),o=n.map(([a,c])=>a);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting pairlist without allowDuplicateKey enabled");if(!t&&o.some(a=>!a))throw new Error("Empty or null key when converting pairlist without allowEmptyKey enabled");return Object.fromEntries(n.filter((a,c)=>n.findIndex(p=>p[0]===a[0])===c))}entries(e={depth:1}){let t=this.toJs(e);return t.values.map((s,n)=>[t.names?t.names[n]:null,s])}toJs(e={depth:0},t=1){let s=[],n=!1,o=[];for(let c=this;!c.isNull();c=c.cdr()){let p=c.tag();p.isNull()?s.push(""):(n=!0,s.push(p.toString())),e.depth&&t>=e.depth?o.push(c.car()):o.push(c.car().toJs(e,t+1))}return{type:"pairlist",names:n?s:null,values:o}}includes(e){return e in this.toObject()}setcar(e){l._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(l._CAR(this.ptr))}cdr(){return y.wrap(l._CDR(this.ptr))}tag(){return y.wrap(l._TAG(this.ptr))}},ce=class extends y{constructor(e){if(e instanceof P)return ue(e,"call"),super(e),this;let t={n:0};try{let{values:s}=it(e),n=s.map(a=>M(new y(a),t)),o=ce.wrap(l._Rf_allocVector(f.call,s.length));M(o,t);for(let[a,c]=[0,o];!c.isNull();[a,c]=[a+1,c.cdr()])c.setcar(n[a]);super(o)}finally{W(t.n)}}setcar(e){l._SETCAR(this.ptr,e.ptr)}car(){return y.wrap(l._CAR(this.ptr))}cdr(){return y.wrap(l._CDR(this.ptr))}eval(){return y.wrap(tt(this.ptr,k.baseEnv))}},qr=class extends y{constructor(e){if(e instanceof P)return ue(e,"list"),super(e),this;let t={n:0};try{let{names:s,values:n}=it(e),o=l._Rf_allocVector(f.list,n.length);M(o,t),n.forEach((a,c)=>{l._SET_VECTOR_ELT(o,c,new y(a).ptr)}),y.wrap(o).setNames(s),super(new P(o))}finally{W(t.n)}}get length(){return l._LENGTH(this.ptr)}toArray(e={depth:1}){return this.toJs(e).values}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1,depth:s=1}={}){let n=this.entries({depth:s}),o=n.map(([a,c])=>a);if(!e&&new Set(o).size!==o.length)throw new Error("Duplicate key when converting list without allowDuplicateKey enabled");if(!t&&o.some(a=>!a))throw new Error("Empty or null key when converting list without allowEmptyKey enabled");return Object.fromEntries(n.filter((a,c)=>n.findIndex(p=>p[0]===a[0])===c))}entries(e={depth:1}){let t=this.toJs(e);return t.values.map((s,n)=>[t.names?t.names[n]:null,s])}toJs(e={depth:0},t=1){return{type:"list",names:this.names(),values:[...Array(this.length).keys()].map(s=>e.depth&&t>=e.depth?this.get(s+1):this.get(s+1).toJs(e,t+1))}}},Me=class extends y{exec(...e){let t={n:0};try{let s=new ce([this,...e]);return M(s,t),s.eval()}finally{W(t.n)}}},ot=class extends y{constructor(e){if(e instanceof P){ue(e,"string"),super(e);return}let t=l.allocateUTF8(e);try{super(new P(l._Rf_mkChar(t)))}finally{l._free(t)}}toString(){return l.UTF8ToString(l._R_CHAR(this.ptr))}toJs(){return{type:"string",value:this.toString()}}},rt=class extends y{constructor(e={}){if(e instanceof P)return ue(e,"environment"),super(e),this;let t=0;try{let{names:s,values:n}=it(e),o=Xt(l._R_NewEnv(k.globalEnv.ptr,0,0));++t,n.forEach((a,c)=>{let p=s?s[c]:null;if(!p)throw new Error("Can't create object in new environment with empty symbol name");let E=new Q(p),ee=Xt(new y(a));try{Fr(o,E,ee)}finally{W(1)}}),super(new P(o))}finally{W(t)}}ls(e=!1,t=!0){return K.wrap(l._R_lsInternal3(this.ptr,Number(e),Number(t))).toArray()}bind(e,t){let s=new Q(e),n=Xt(new y(t));try{Fr(this,s,n)}finally{W(1)}}names(){return this.ls(!0,!0)}frame(){return y.wrap(l._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=0}={}){let t=this.names();return Object.fromEntries([...Array(t.length).keys()].map(s=>[t[s],this.getDollar(t[s]).toJs({depth:e})]))}toJs(e={depth:0},t=1){let s=this.names(),n=[...Array(s.length).keys()].map(o=>e.depth&&t>=e.depth?this.getDollar(s[o]):this.getDollar(s[o]).toJs(e,t+1));return{type:"environment",names:s,values:n}}},Z=class extends y{constructor(e,t,s){if(e instanceof P)return ue(e,t),super(e),this;let n={n:0};try{let{names:o,values:a}=it(e),c=l._Rf_allocVector(f[t],a.length);M(c,n),a.forEach(s(c)),y.wrap(c).setNames(o),super(new P(c))}finally{W(n.n)}}get length(){return l._LENGTH(this.ptr)}get(e){return super.get(e)}subset(e){return super.subset(e)}getDollar(e){throw new Error("$ operator is invalid for atomic vectors")}detectMissing(){let e={n:0};try{let t=l._Rf_lang2(new Q("is.na").ptr,this.ptr);M(t,e);let s=le.wrap(tt(t,k.baseEnv));M(s,e);let n=s.toTypedArray();return Array.from(n).map(o=>!!o)}finally{W(e.n)}}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,s)=>t?null:e[s])}toObject({allowDuplicateKey:e=!0,allowEmptyKey:t=!1}={}){let s=this.entries(),n=s.map(([o,a])=>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(s.filter((o,a)=>s.findIndex(c=>c[0]===o[0])===a))}entries(){let e=this.toArray(),t=this.names();return e.map((s,n)=>[t?t[n]:null,s])}toJs(){return{type:this.type(),names:this.names(),values:this.toArray()}}},Zt,Vr=class extends Z{constructor(e){super(e,"logical",i(Vr,Zt))}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(l.HEAP32.subarray(l._LOGICAL(this.ptr)/4,l._LOGICAL(this.ptr)/4+this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,s)=>t?null:!!e[s])}},le=Vr;Zt=new WeakMap,u(le,Zt,e=>{let t=l._LOGICAL(e),s=l.getValue(l._R_NaInt,"i32");return(n,o)=>{l.setValue(t+4*o,n===null?s:!!n,"i32")}});var Yt,Hr=class extends Z{constructor(e){super(e,"integer",i(Hr,Yt))}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(l.HEAP32.subarray(l._INTEGER(this.ptr)/4,l._INTEGER(this.ptr)/4+this.length))}},Gt=Hr;Yt=new WeakMap,u(Gt,Yt,e=>{let t=l._INTEGER(e),s=l.getValue(l._R_NaInt,"i32");return(n,o)=>{l.setValue(t+4*o,n===null?s:Math.round(Number(n)),"i32")}});var er,Jr=class extends Z{constructor(e){super(e,"double",i(Jr,er))}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(l.HEAPF64.subarray(l._REAL(this.ptr)/8,l._REAL(this.ptr)/8+this.length))}},st=Jr;er=new WeakMap,u(st,er,e=>{let t=l._REAL(e),s=l.getValue(l._R_NaReal,"double");return(n,o)=>{l.setValue(t+8*o,n===null?s:n,"double")}});var tr,zr=class extends Z{constructor(e){super(e,"complex",i(zr,tr))}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(l.HEAPF64.subarray(l._COMPLEX(this.ptr)/8,l._COMPLEX(this.ptr)/8+2*this.length))}toArray(){let e=this.toTypedArray();return this.detectMissing().map((t,s)=>t?null:{re:e[2*s],im:e[2*s+1]})}},nt=zr;tr=new WeakMap,u(nt,tr,e=>{let t=l._COMPLEX(e),s=l.getValue(l._R_NaReal,"double");return(n,o)=>{l.setValue(t+8*(2*o),n===null?s:n.re,"double"),l.setValue(t+8*(2*o+1),n===null?s:n.im,"double")}});var rr,Xr=class extends Z{constructor(e){super(e,"character",i(Xr,rr))}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(l.HEAPU32.subarray(l._STRING_PTR(this.ptr)/4,l._STRING_PTR(this.ptr)/4+this.length))}toArray(){return this.detectMissing().map((e,t)=>e?null:l.UTF8ToString(l._R_CHAR(l._STRING_ELT(this.ptr,t))))}},K=Xr;rr=new WeakMap,u(K,rr,e=>(t,s)=>{t===null?l._SET_STRING_ELT(e,s,k.naString.ptr):l._SET_STRING_ELT(e,s,new ot(t).ptr)});var sr,$r=class extends Z{constructor(e){super(e,"raw",i($r,sr))}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(l.HEAPU8.subarray(l._RAW(this.ptr),l._RAW(this.ptr)+this.length))}},Kt=$r;sr=new WeakMap,u(Kt,sr,e=>{let t=l._RAW(e);return(s,n)=>{l.setValue(t+n,Number(s),"i8")}});function it(r){return jr(r)?r:Array.isArray(r)||ArrayBuffer.isView(r)?{names:null,values:r}:r&&typeof r=="object"&&!Br(r)?{names:Object.keys(r),values:Object.values(r)}:{names:null,values:[r]}}function Hs(r){let e={[f.null]:Qt,[f.symbol]:Q,[f.pairlist]:De,[f.closure]:Me,[f.environment]:rt,[f.call]:ce,[f.special]:Me,[f.builtin]:Me,[f.string]:ot,[f.logical]:le,[f.integer]:Gt,[f.double]:st,[f.complex]:nt,[f.character]:K,[f.list]:qr,[f.raw]:Kt,[f.function]:Me};return r in e?e[r]:y}function Ro(r){return r instanceof y}var k;function go(){}function bo(r,e){return async function*(){let t={type:"callRObjectMethod",data:{payload:e._payload,prop:"getPropertyValue",args:[{payloadType:"raw",obj:"length"}],shelter:void 0}},s=await r.request(t);if(typeof s.obj!="number")throw new O("Cannot iterate over object, unexpected type for length property.");for(let n=1;n<=s.obj;n++)yield e.get(n)}}function Js(r,e,t){return async(...s)=>{let n=s.map(c=>g(c)?c._payload:{obj:U(c,g,p=>p._payload),payloadType:"raw"}),o={type:"callRObjectMethod",data:{payload:t,prop:e,args:n}},a=await r.request(o);switch(a.payloadType){case"ptr":return Y(r,a);case"raw":return U(a,Ct,(p,E)=>Y(E,p),r).obj}}}async function wo(r,e,t,s){let n={type:"newRObject",data:{objType:e,obj:U(s,g,a=>a._payload),shelter:t}},o=await r.request(n);switch(o.payloadType){case"raw":throw new q("Unexpected raw payload type returned from newRObject");case"ptr":return Y(r,o)}}function Y(r,e){var s;let t=new Proxy((s=e.obj.methods)!=null&&s.includes("exec")?Object.assign(go,{...e}):e,{get:(n,o)=>{var a;if(o==="_payload")return e;if(o===Symbol.asyncIterator)return bo(r,t);if((a=e.obj.methods)!=null&&a.includes(o.toString()))return Js(r,o.toString(),e)},apply:async(n,o,a)=>{let c=await Y(r,e).exec(...a);return Lr(c)?c:c.toJs()}});return t}function A(r,e,t){return new Proxy(y,{construct:(s,n)=>wo(r,t,e,...n),get:(s,n)=>Js(r,n.toString())})}var at,lt,ct,ut,pt,or,ir,ar,lr,cr,ur,zs,nr=class{constructor(e={},t={REnv:{R_HOME:"/usr/lib/R",FONTCONFIG_PATH:"/etc/fonts",R_ENABLE_JIT:"0"}}){u(this,ur);u(this,at,void 0);u(this,lt,void 0);u(this,ct,void 0);u(this,ut,void 0);u(this,pt,void 0);u(this,or,e=>{console.log(e)});u(this,ir,e=>{console.error(e)});u(this,ar,e=>{let t=prompt(e);t&&this.stdin(`${t}
2
+ `)});u(this,lr,e=>{if(m)throw new Error("Plotting with HTML canvas is not yet supported under Node");this.canvas.getContext("2d").drawImage(e,0,0)});u(this,cr,()=>{if(m)throw new Error("Plotting with HTML canvas is not yet supported under Node");this.canvas.getContext("2d").clearRect(0,0,this.canvas.width,this.canvas.height)});this.webR=new dt(t),m||(this.canvas=document.createElement("canvas"),this.canvas.setAttribute("width","1008"),this.canvas.setAttribute("height","1008")),d(this,at,e.stdout||i(this,or)),d(this,lt,e.stderr||i(this,ir)),d(this,ct,e.prompt||i(this,ar)),d(this,ut,e.canvasImage||i(this,lr)),d(this,pt,e.canvasNewPage||i(this,cr)),this.webR.evalRVoid("options(device=webr::canvas)")}stdin(e){this.webR.writeConsole(e)}interrupt(){this.webR.interrupt()}run(){x(this,ur,zs).call(this)}};at=new WeakMap,lt=new WeakMap,ct=new WeakMap,ut=new WeakMap,pt=new WeakMap,or=new WeakMap,ir=new WeakMap,ar=new WeakMap,lr=new WeakMap,cr=new WeakMap,ur=new WeakSet,zs=async function(){for(;;){let e=await this.webR.read();switch(e.type){case"stdout":i(this,at).call(this,e.data);break;case"stderr":i(this,lt).call(this,e.data);break;case"prompt":i(this,ct).call(this,e.data);break;case"canvas":e.data.event==="canvasImage"?i(this,ut).call(this,e.data.image):e.data.event==="canvasNewPage"&&i(this,pt).call(this);break;case"closed":return;default:console.warn(`Unhandled output type for webR Console: ${e.type}.`)}}};var xo={FONTCONFIG_PATH:"/etc/fonts",R_HOME:"/usr/lib/R",R_ENABLE_JIT:"0"},Xs={RArgs:[],REnv:xo,baseUrl:Ls,serviceWorkerUrl:"",repoUrl:js,homedir:"/home/web_user",interactive:!0,channelType:D.Automatic,createLazyFilesystem:!0},w,yt,pr,$s,dt=class{constructor(e={}){u(this,pr);u(this,w,void 0);u(this,yt,void 0);this.FS={lookupPath:async e=>{let t={type:"lookupPath",data:{path:e}};return(await i(this,w).request(t)).obj},mkdir:async e=>{let t={type:"mkdir",data:{path:e}};return(await i(this,w).request(t)).obj},readFile:async(e,t)=>{let s={type:"readFile",data:{path:e,flags:t}};return(await i(this,w).request(s)).obj},rmdir:async e=>{let t={type:"rmdir",data:{path:e}};await i(this,w).request(t)},writeFile:async(e,t,s)=>{let n={type:"writeFile",data:{path:e,data:t,flags:s}};await i(this,w).request(n)},unlink:async e=>{let t={type:"unlink",data:{path:e}};await i(this,w).request(t)}};let t={...Xs,...e,REnv:{...Xs.REnv,...e.REnv}};d(this,w,Ns(t)),this.objs={},this.Shelter=vo(i(this,w)),d(this,yt,i(this,w).initialised.then(async()=>{this.globalShelter=await new this.Shelter,this.RObject=this.globalShelter.RObject,this.RLogical=this.globalShelter.RLogical,this.RInteger=this.globalShelter.RInteger,this.RDouble=this.globalShelter.RDouble,this.RComplex=this.globalShelter.RComplex,this.RCharacter=this.globalShelter.RCharacter,this.RRaw=this.globalShelter.RRaw,this.RList=this.globalShelter.RList,this.RPairlist=this.globalShelter.RPairlist,this.REnvironment=this.globalShelter.REnvironment,this.RSymbol=this.globalShelter.RSymbol,this.RString=this.globalShelter.RString,this.RCall=this.globalShelter.RCall,this.objs={baseEnv:await this.RObject.getPersistentObject("baseEnv"),globalEnv:await this.RObject.getPersistentObject("globalEnv"),null:await this.RObject.getPersistentObject("null"),true:await this.RObject.getPersistentObject("true"),false:await this.RObject.getPersistentObject("false"),na:await this.RObject.getPersistentObject("na")},x(this,pr,$s).call(this)}))}async init(){return i(this,yt)}close(){i(this,w).close()}async read(){return await i(this,w).read()}async flush(){return await i(this,w).flush()}write(e){i(this,w).write(e)}writeConsole(e){this.write({type:"stdin",data:e+`
3
+ `})}interrupt(){i(this,w).interrupt()}async installPackages(e,t=!1){for(let s of e){let n={type:"installPackage",data:{name:s,quiet:t}};await i(this,w).request(n)}}async destroy(e){await this.globalShelter.destroy(e)}async evalR(e,t){return this.globalShelter.evalR(e,t)}async evalRVoid(e,t){return this.evalRRaw(e,"void",t)}async evalRBoolean(e,t){return this.evalRRaw(e,"boolean",t)}async evalRNumber(e,t){return this.evalRRaw(e,"number",t)}async evalRString(e,t){return this.evalRRaw(e,"string",t)}async evalRRaw(e,t,s={}){let n=U(s,g,c=>c._payload),o={type:"evalRRaw",data:{code:e,options:n,outputType:t}},a=await i(this,w).request(o);switch(a.payloadType){case"raw":return a.obj;case"ptr":throw new q("Unexpected ptr payload type returned from evalRVoid")}}async invokeWasmFunction(e,...t){let s={type:"invokeWasmFunction",data:{ptr:e,args:t}};return(await i(this,w).request(s)).obj}};w=new WeakMap,yt=new WeakMap,pr=new WeakSet,$s=async function(){for(;;){let e=await i(this,w).readSystem();switch(e.type){case"setTimeoutWasm":setTimeout((t,s)=>{this.invokeWasmFunction(t,...s)},e.data.delay,e.data.ptr,e.data.args);break;case"console.log":console.log(e.data);break;case"console.warn":console.warn(e.data);break;case"console.error":console.error(e.data);break;default:throw new O("Unknown system message type `"+e.type+"`")}}};var b,R,ft,ht=class{constructor(e){u(this,b,"");u(this,R,void 0);u(this,ft,!1);d(this,R,e)}async init(){if(i(this,ft))return;let e={type:"newShelter"},t=await i(this,R).request(e);d(this,b,t.obj),this.RObject=A(i(this,R),i(this,b),"object"),this.RLogical=A(i(this,R),i(this,b),"logical"),this.RInteger=A(i(this,R),i(this,b),"integer"),this.RDouble=A(i(this,R),i(this,b),"double"),this.RComplex=A(i(this,R),i(this,b),"complex"),this.RCharacter=A(i(this,R),i(this,b),"character"),this.RRaw=A(i(this,R),i(this,b),"raw"),this.RList=A(i(this,R),i(this,b),"list"),this.RPairlist=A(i(this,R),i(this,b),"pairlist"),this.REnvironment=A(i(this,R),i(this,b),"environment"),this.RSymbol=A(i(this,R),i(this,b),"symbol"),this.RString=A(i(this,R),i(this,b),"string"),this.RCall=A(i(this,R),i(this,b),"call"),d(this,ft,!0)}async purge(){let e={type:"shelterPurge",data:i(this,b)};await i(this,R).request(e)}async destroy(e){let t={type:"shelterDestroy",data:{id:i(this,b),obj:e._payload}};await i(this,R).request(t)}async size(){let e={type:"shelterSize",data:i(this,b)};return(await i(this,R).request(e)).obj}async evalR(e,t={}){let s=U(t,g,a=>a._payload),n={type:"evalR",data:{code:e,options:s,shelter:i(this,b)}},o=await i(this,R).request(n);switch(o.payloadType){case"raw":throw new q("Unexpected payload type returned from evalR");default:return Y(i(this,R),o)}}async captureR(e,t={}){let s=U(t,g,a=>a._payload),n={type:"captureR",data:{code:e,options:s,shelter:i(this,b)}},o=await i(this,R).request(n);switch(o.payloadType){case"ptr":throw new q("Unexpected payload type returned from evalR");case"raw":{let a=o.obj,c=Y(i(this,R),a.result),p=a.output;for(let E=0;E<p.length;++E)p[E].type!=="stdout"&&p[E].type!=="stderr"&&(p[E].data=Y(i(this,R),p[E].data));return{result:c,output:p}}}}};b=new WeakMap,R=new WeakMap,ft=new WeakMap;function vo(r){return new Proxy(ht,{construct:async()=>{let e=new ht(r);return await e.init(),e}})}0&&(module.exports={ChannelType,Console,Shelter,WebR,WebRChannelError,WebRError,WebRPayloadError,WebRWorkerError,isRCall,isRCharacter,isRComplex,isRDouble,isREnvironment,isRFunction,isRInteger,isRList,isRLogical,isRNull,isRObject,isRPairlist,isRRaw,isRSymbol});
4
4
  //# sourceMappingURL=webr.cjs.map