@eduwork/dsh-remote-access 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/typert.js ADDED
@@ -0,0 +1,38 @@
1
+ // src/typert.ts
2
+ import { z } from "zod";
3
+ var pkg = "@eduwork/dsh-remote-access";
4
+ var ACCESS_KEY_REF = "EDUWORK_REMOTE_ACCESS_KEY";
5
+ var codec = (name, schema) => Object.freeze({
6
+ mode: "strict",
7
+ create() {
8
+ return this.schema;
9
+ },
10
+ typeSymbol: `${pkg}#${name}`,
11
+ schema
12
+ });
13
+ var parameter = (name, schema) => Object.freeze({ name, wire: name, source: "json", codec: codec(name, schema) });
14
+ var method = (name, parameters = []) => ({
15
+ id: `${pkg}#remoteDevices/${name}`,
16
+ service: "remoteDevices",
17
+ namespace: "remoteDevices",
18
+ method: name,
19
+ invocation: { kind: "direct" },
20
+ parameters,
21
+ result: codec("PanelStatus", z.unknown()),
22
+ sourceLocation: { file: "lib/index.js", line: 1, column: 1 }
23
+ });
24
+ var descriptors = [
25
+ method("status"),
26
+ method("createInvite"),
27
+ method("cancelInvite"),
28
+ method("decide", [parameter("key", z.string()), parameter("approved", z.boolean())]),
29
+ method("revoke", [parameter("key", z.string())])
30
+ ];
31
+ var TYPERT = { package: pkg, face: "host", schemas: [], invocations: descriptors, model: { services: [], events: [], objects: [] } };
32
+ var typert_default = TYPERT;
33
+ export {
34
+ ACCESS_KEY_REF,
35
+ TYPERT,
36
+ typert_default as default,
37
+ descriptors
38
+ };
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256"><title>EduWork</title><rect width="256" height="256" rx="56" fill="#9f2636"/><path fill="#fff" transform="translate(43 32) scale(.665 .78)" d="M42 108V81Q42 49 87 39L214 10V28Q214 61 181 70L94 91L174 112V129Q174 151 149 158L94 173L182 195Q214 204 214 235V246L88 219Q63 212 42 195V178Q42 151 75 141L103 133Z"/></svg>
@@ -0,0 +1,18 @@
1
+ <!doctype html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content">
6
+ <meta name="theme-color" content="#9f2636">
7
+ <meta name="apple-mobile-web-app-capable" content="yes">
8
+ <title>EduWork</title>
9
+ <link rel="manifest" href="manifest.webmanifest">
10
+ <link rel="icon" href="icon.svg" type="image/svg+xml">
11
+ <link rel="apple-touch-icon" href="icon.png">
12
+ <link rel="stylesheet" href="loader.css">
13
+ <script type="module" src="loader.js"></script>
14
+ </head>
15
+ <body>
16
+ <main></main>
17
+ </body>
18
+ </html>
@@ -0,0 +1,24 @@
1
+ :root { color-scheme: light dark; --accent: #9f2636; --line: #e7dfda; --muted: #746762; font: 15px/1.6 system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif; }
2
+ @media (prefers-color-scheme: dark) { :root { --line: #3a3330; --muted: #b3a7a2; } }
3
+ /* Pulling down at the top of DSH would otherwise reload the page and reconnect. */
4
+ html, body { margin: 0; height: 100%; overscroll-behavior: none; }
5
+ [hidden] { display: none !important; }
6
+ main { height: 100dvh; }
7
+ /* DSH cannot see the notch or the home indicator from inside the frame, so the frame keeps clear of them. */
8
+ iframe { display: block; box-sizing: border-box; width: 100%; height: 100%; border: 0; padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); }
9
+ .card { box-sizing: border-box; max-width: 480px; margin: 0 auto; padding: max(32px, env(safe-area-inset-top)) 20px 32px; display: grid; gap: 14px; }
10
+ h1 { margin: 0; font-size: 20px; }
11
+ .note { margin: 0; color: var(--muted); font-size: 13px; }
12
+ .code { margin: 8px 0; font-size: 40px; font-weight: 650; letter-spacing: 6px; font-variant-numeric: tabular-nums; text-align: center; }
13
+ label { display: grid; gap: 6px; font-size: 14px; }
14
+ input { font: inherit; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: transparent; color: inherit; }
15
+ button, .button { font: inherit; padding: 10px 16px; border: 1px solid var(--line); border-radius: 10px; background: transparent; color: inherit; cursor: pointer; text-align: center; text-decoration: none; }
16
+ .primary { border-color: var(--accent); background: var(--accent); color: #fff; }
17
+ ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
18
+ li { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; }
19
+ li span { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
20
+ li .button, li button { padding: 6px 12px; font-size: 13px; }
21
+ #bar, #banner { position: fixed; left: 0; right: 0; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 6px 12px; font-size: 13px; background: #221b18; color: #fff; }
22
+ #bar { top: 0; padding-top: max(6px, env(safe-area-inset-top)); }
23
+ #banner { bottom: 0; padding-bottom: max(6px, env(safe-area-inset-bottom)); }
24
+ #bar button, #banner button { padding: 2px 10px; font-size: 12px; border-color: #fff6; }
@@ -0,0 +1 @@
1
+ var uf=Object.create;var uA=Object.defineProperty;var lf=Object.getOwnPropertyDescriptor;var Ef=Object.getOwnPropertyNames;var df=Object.getPrototypeOf,Cf=Object.prototype.hasOwnProperty;var lA=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var D=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}};var xf=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Ef(e))!Cf.call(t,i)&&i!==n&&uA(t,i,{get:()=>e[i],enumerable:!(r=lf(e,i))||r.enumerable});return t};var jn=(t,e,n)=>(n=t!=null?uf(df(t)):{},xf(e||!t||!t.__esModule?uA(n,"default",{value:t,enumerable:!0}):n,t));var W=D((PI,BA)=>{BA.exports=pA;var vr=class extends Error{};vr.prototype.name="AssertionError";function pA(t,e){if(!t){var n=new vr(e);throw Error.captureStackTrace&&Error.captureStackTrace(n,pA),n}}});var bA=D((RI,QA)=>{function mf(t){return t.length}function Df(t){let e=t.byteLength,n="";for(let r=0;r<e;r++)n+=String.fromCharCode(t[r]&127);return n}function Uf(t,e){let n=t.byteLength;for(let r=0;r<n;r++)t[r]=e.charCodeAt(r);return n}QA.exports={byteLength:mf,toString:Df,write:Uf}});var _A=D((OI,wA)=>{var Ye="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",de=new Uint8Array(256);for(let t=0;t<Ye.length;t++)de[Ye.charCodeAt(t)]=t;de[45]=62;de[95]=63;function Lf(t){let e=t.length;return t.charCodeAt(e-1)===61&&e--,e>1&&t.charCodeAt(e-1)===61&&e--,e*3>>>2}function vf(t){let e=t.byteLength,n="";for(let r=0;r<e;r+=3)n+=Ye[t[r]>>2]+Ye[(t[r]&3)<<4|t[r+1]>>4]+Ye[(t[r+1]&15)<<2|t[r+2]>>6]+Ye[t[r+2]&63];return e%3===2?n=n.substring(0,n.length-1)+"=":e%3===1&&(n=n.substring(0,n.length-2)+"=="),n}function Yf(t,e){let n=t.byteLength;for(let r=0,i=0;i<n;r+=4){let A=de[e.charCodeAt(r)],o=de[e.charCodeAt(r+1)],s=de[e.charCodeAt(r+2)],f=de[e.charCodeAt(r+3)];t[i++]=A<<2|o>>4,t[i++]=(o&15)<<4|s>>2,t[i++]=(s&3)<<6|f&63}return n}wA.exports={byteLength:Lf,toString:vf,write:Yf}});var DA=D((GI,mA)=>{function Mf(t){return t.length>>>1}function Kf(t){let e=t.byteLength;t=new DataView(t.buffer,t.byteOffset,e);let n="",r=0;for(let i=e-e%4;r<i;r+=4)n+=t.getUint32(r).toString(16).padStart(8,"0");for(;r<e;r++)n+=t.getUint8(r).toString(16).padStart(2,"0");return n}function Tf(t,e){let n=t.byteLength;for(let r=0;r<n;r++){let i=SA(e.charCodeAt(r*2)),A=SA(e.charCodeAt(r*2+1));if(i===void 0||A===void 0)return r;t[r]=i<<4|A}return n}mA.exports={byteLength:Mf,toString:Kf,write:Tf};function SA(t){if(t>=48&&t<=57)return t-48;if(t>=65&&t<=70)return t-65+10;if(t>=97&&t<=102)return t-97+10}});var LA=D((qI,UA)=>{function Ff(t){return t.length}function Hf(t){let e=t.byteLength,n="";for(let r=0;r<e;r++)n+=String.fromCharCode(t[r]);return n}function Nf(t,e){let n=t.byteLength;for(let r=0;r<n;r++)t[r]=e.charCodeAt(r);return n}UA.exports={byteLength:Ff,toString:Hf,write:Nf}});var YA=D((VI,vA)=>{function kf(t){let e=0;for(let n=0,r=t.length;n<r;n++){let i=t.charCodeAt(n);if(i>=55296&&i<=56319&&n+1<r){let A=t.charCodeAt(n+1);if(A>=56320&&A<=57343){e+=4,n++;continue}}i<=127?e+=1:i<=2047?e+=2:e+=3}return e}var Xn;if(typeof TextDecoder<"u"){let t=new TextDecoder;Xn=function(n){return t.decode(n)}}else Xn=function(e){let n=e.byteLength,r="",i=0;for(;i<n;){let A=e[i];if(A<=127){r+=String.fromCharCode(A),i++;continue}let o=0,s=0;if(A<=223?(o=1,s=A&31):A<=239?(o=2,s=A&15):A<=244&&(o=3,s=A&7),n-i-o>0){let f=0;for(;f<o;)A=e[i+f+1],s=s<<6|A&63,f+=1}else s=65533,o=n-i;r+=String.fromCodePoint(s),i+=o+1}return r};var zn;if(typeof TextEncoder<"u"){let t=new TextEncoder;zn=function(n,r){return t.encodeInto(r,n).written}}else zn=function(e,n){let r=e.byteLength,i=0,A=0;for(;i<n.length;){let o=n.codePointAt(i);if(o<=127){if(A+1>r)break;e[A++]=o,i++;continue}let s=0,f=0;if(o<=2047?(s=6,f=192):o<=65535?(s=12,f=224):o<=2097151&&(s=18,f=240),A+s/6+1>r)break;for(e[A++]=f|o>>s,s-=6;s>=0;)e[A++]=128|o>>s&63,s-=6;i+=o>=65536?2:1}return A};vA.exports={byteLength:kf,toString:Xn,write:zn}});var KA=D((JI,MA)=>{function Pf(t){return t.length*2}function Rf(t){let e=t.byteLength,n="";for(let r=0;r<e-1;r+=2)n+=String.fromCharCode(t[r]+t[r+1]*256);return n}function Of(t,e){let n=t.byteLength,r=n;for(let i=0;i<e.length&&!((r-=2)<0);++i){let A=e.charCodeAt(i),o=A>>8,s=A%256;t[i*2]=s,t[i*2+1]=o}return n}MA.exports={byteLength:Pf,toString:Rf,write:Of}});var St=D(($e,RA)=>{var Gf=bA(),qf=_A(),Vf=DA(),Jf=LA(),Zn=YA(),jf=KA(),TA=new Uint8Array(Uint16Array.of(255).buffer)[0]===255;function Me(t){switch(t){case"ascii":return Gf;case"base64":return qf;case"hex":return Vf;case"binary":case"latin1":return Jf;case"utf8":case"utf-8":case void 0:case null:return Zn;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return jf;default:throw new Error(`Unknown encoding '${t}'`)}}function Wf(t){return t instanceof Uint8Array}function Xf(t){try{return Me(t),!0}catch{return!1}}function zf(t,e,n){let r=new Uint8Array(t);return e!==void 0&&$e.fill(r,e,0,r.byteLength,n),r}function Zf(t){return new Uint8Array(t)}function $f(t){return new Uint8Array(t)}function th(t,e){return Me(e).byteLength(t)}function FA(t,e){if(t===e)return 0;let n=Math.min(t.byteLength,e.byteLength);t=new DataView(t.buffer,t.byteOffset,t.byteLength),e=new DataView(e.buffer,e.byteOffset,e.byteLength);let r=0;for(let i=n-n%4;r<i;r+=4){let A=t.getUint32(r,TA),o=e.getUint32(r,TA);if(A!==o)break}for(;r<n;r++){let i=t.getUint8(r),A=e.getUint8(r);if(i<A)return-1;if(i>A)return 1}return t.byteLength>e.byteLength?1:t.byteLength<e.byteLength?-1:0}function eh(t,e){e===void 0&&(e=t.reduce((i,A)=>i+A.byteLength,0));let n=new Uint8Array(e),r=0;for(let i of t){if(r+i.byteLength>n.byteLength)return n.set(i.subarray(0,n.byteLength-r),r),n;n.set(i,r),r+=i.byteLength}return n}function rh(t,e,n=0,r=0,i=t.byteLength){if(n<0&&(n=0),n>=e.byteLength)return 0;let A=e.byteLength-n;if(r<0&&(r=0),r>=t.byteLength||i<=r)return 0;i>t.byteLength&&(i=t.byteLength),i-r>A&&(i=r+A);let o=i-r;return t===e?e.copyWithin(n,r,i):((r!==0||i!==t.byteLength)&&(t=t.subarray(r,i)),e.set(t,n)),o}function nh(t,e){return t===e?!0:t.byteLength!==e.byteLength?!1:FA(t,e)===0}function ih(t,e,n=0,r=t.byteLength,i="utf8"){if(typeof e=="string"?typeof n=="string"?(i=n,n=0,r=t.byteLength):typeof r=="string"&&(i=r,r=t.byteLength):typeof e=="number"?e=e&255:typeof e=="boolean"&&(e=+e),n<0&&(n=0),n>=t.byteLength||r<=n)return t;if(r>t.byteLength&&(r=t.byteLength),typeof e=="number")return t.fill(e,n,r);typeof e=="string"&&(e=$e.from(e,i));let A=e.byteLength;for(let o=0,s=r-n;o<s;++o)t[o+n]=e[o%A];return t}function HA(t,e,n){return typeof t=="string"?Ah(t,e):Array.isArray(t)?oh(t):ArrayBuffer.isView(t)?sh(t):ah(t,e,n)}function Ah(t,e){let n=Me(e),r=new Uint8Array(n.byteLength(t));return n.write(r,t),r}function oh(t){let e=new Uint8Array(t.length);return e.set(t),e}function sh(t){let e=new Uint8Array(t.byteLength);return e.set(t),e}function ah(t,e,n){return new Uint8Array(t,e,n)}function fh(t,e,n,r){return NA(t,e,n,r)!==-1}function NA(t,e,n,r){return kA(t,e,n,r,!0)}function hh(t,e,n,r){return kA(t,e,n,r,!1)}function kA(t,e,n,r,i){if(t.byteLength===0)return-1;if(typeof n=="string"?(r=n,n=0):n===void 0?n=i?0:t.length-1:n<0&&(n+=t.byteLength),n>=t.byteLength){if(i)return-1;n=t.byteLength-1}else if(n<0)if(i)n=0;else return-1;if(typeof e=="string")e=HA(e,r);else if(typeof e=="number")return e=e&255,i?t.indexOf(e,n):t.lastIndexOf(e,n);if(e.byteLength===0)return-1;if(i){let A=-1;for(let o=n;o<t.byteLength;o++)if(t[o]===e[A===-1?0:o-A]){if(A===-1&&(A=o),o-A+1===e.byteLength)return A}else A!==-1&&(o-=o-A),A=-1}else{n+e.byteLength>t.byteLength&&(n=t.byteLength-e.byteLength);for(let A=n;A>=0;A--){let o=!0;for(let s=0;s<e.byteLength;s++)if(t[A+s]!==e[s]){o=!1;break}if(o)return A}}return-1}function Ce(t,e,n){let r=t[e];t[e]=t[n],t[n]=r}function ch(t){let e=t.byteLength;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let n=0;n<e;n+=2)Ce(t,n,n+1);return t}function gh(t){let e=t.byteLength;if(e%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let n=0;n<e;n+=4)Ce(t,n,n+3),Ce(t,n+1,n+2);return t}function Ih(t){let e=t.byteLength;if(e%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let n=0;n<e;n+=8)Ce(t,n,n+7),Ce(t,n+1,n+6),Ce(t,n+2,n+5),Ce(t,n+3,n+4);return t}function yh(t){return t}function PA(t,e="utf8",n=0,r=t.byteLength){return arguments.length===1?Zn.toString(t):arguments.length===2?Me(e).toString(t):(n<0&&(n=0),n>=t.byteLength||r<=n?"":(r>t.byteLength&&(r=t.byteLength),(n!==0||r!==t.byteLength)&&(t=t.subarray(n,r)),Me(e).toString(t)))}function uh(t,e,n){return PA(t,"hex",e,n)}function lh(t,e,n=0,r=t.byteLength,i){if(arguments.length===2)return Zn.write(t,e);typeof n=="string"?(i=n,n=0,r=t.byteLength):typeof r=="string"&&(i=r,r=t.byteLength-n),r=Math.min(r,$e.byteLength(e,i));let A=n;if(A<0&&(A=0),A>=t.byteLength)return 0;let o=n+r;return o<=A?0:(o>t.byteLength&&(o=t.byteLength),(A!==0||o!==t.byteLength)&&(t=t.subarray(A,o)),Me(i).write(t,e))}function Eh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat64(e,!1)}function dh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat64(e,!0)}function Ch(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat32(e,!1)}function xh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat32(e,!0)}function ph(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt32(e,!1)}function Bh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getInt32(e,!0)}function Qh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint32(e,!1)}function bh(t,e=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).getUint32(e,!0)}function wh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(n,e,!1),n+8}function _h(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(n,e,!0),n+8}function Sh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(n,e,!1),n+4}function mh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(n,e,!0),n+4}function Dh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setInt32(n,e,!1),n+4}function Uh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setInt32(n,e,!0),n+4}function Lh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint32(n,e,!1),n+4}function vh(t,e,n=0){return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint32(n,e,!0),n+4}RA.exports=$e={isBuffer:Wf,isEncoding:Xf,alloc:zf,allocUnsafe:Zf,allocUnsafeSlow:$f,byteLength:th,compare:FA,concat:eh,copy:rh,equals:nh,fill:ih,from:HA,includes:fh,indexOf:NA,lastIndexOf:hh,swap16:ch,swap32:gh,swap64:Ih,toBuffer:yh,toString:PA,toHex:uh,write:lh,readDoubleBE:Eh,readDoubleLE:dh,readFloatBE:Ch,readFloatLE:xh,readInt32BE:ph,readInt32LE:Bh,readUInt32BE:Qh,readUInt32LE:bh,writeDoubleBE:wh,writeDoubleLE:_h,writeFloatBE:Sh,writeFloatLE:mh,writeInt32BE:Dh,writeInt32LE:Uh,writeUInt32BE:Lh,writeUInt32LE:vh}});var OA=D(()=>{});var xe=D((XI,$n)=>{var Yh=W(),GA=(function(){var t=65536,e=globalThis.crypto||globalThis.msCrypto;function n(A,o){for(let s=0;s<o;s+=t)e.getRandomValues(new Uint8Array(A.buffer,s+A.byteOffset,Math.min(o-s,t)))}function r(A,o){new Uint8Array(A.buffer,A.byteOffset,o).set(e.randomBytes(o))}function i(){throw new Error("No secure random number generator available")}return e&&e.getRandomValues?n:lA!=null&&(e=OA(),e&&e.randomBytes)?r:i})();Object.defineProperty($n.exports,"randombytes",{value:GA});$n.exports.randombytes_buf=function(t){Yh(t,"out must be given"),GA(t,t.byteLength)}});var qA=D(()=>{});var ti=D((ty,JA)=>{function Mh(t){return new Uint8Array(t)}function Kh(t){VA(t),Th().port1.postMessage(t.buffer,[t.buffer])}function VA(t){t.fill(0)}var Yr;function Th(){if(Yr)return Yr;var t=globalThis.MessageChannel;return t==null&&({MessageChannel:t}=qA()),Yr=new t,Yr}JA.exports={sodium_malloc:Mh,sodium_free:Kh,sodium_memzero:VA}});var pe=D((ey,ei)=>{ei.exports={crypto_verify_16:Fh,crypto_verify_32:Hh,crypto_verify_64:Nh};function Mr(t,e,n,r,i){var A=0;for(let o=0;o<i;o++)A|=t[e+o]^n[r+o];return(1&A-1>>>8)-1}Object.defineProperty(ei.exports,"vn",{value:Mr});function Fh(t,e,n,r){return Mr(t,e,n,r,16)===0}function Hh(t,e,n,r){return Mr(t,e,n,r,32)===0}function Nh(t,e,n,r){return Mr(t,e,n,r,64)===0}});var ri=D((ry,jA)=>{var kh=W(),{vn:Ph}=pe();function Rh(t){let e=t.byteLength;for(var n=1,r=0;r<e;r++)n+=t[r],t[r]=n,n>>=8}function Oh(t,e){return kh(t.byteLength===e.byteLength,"buffers must be the same size"),Ph(t,0,e,0,t.byteLength)===0}function Gh(t){var e=0;for(let n=0;n<t.length;n++)e|=t[n];return e===0}jA.exports={sodium_increment:Rh,sodium_memcmp:Oh,sodium_is_zero:Gh}});var ZA=D((ny,zA)=>{var XA=W(),Tr=St();zA.exports=Gt;var Kr=128,WA=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function Gt(){return this instanceof Gt?(this.hh=new Int32Array(8),this.hl=new Int32Array(8),this.buffer=new Uint8Array(128),this.finalised=!1,this.bytesRead=0,this.pos=0,this.hh[0]=1779033703,this.hh[1]=3144134277,this.hh[2]=1013904242,this.hh[3]=2773480762,this.hh[4]=1359893119,this.hh[5]=2600822924,this.hh[6]=528734635,this.hh[7]=1541459225,this.hl[0]=4089235720,this.hl[1]=2227873595,this.hl[2]=4271175723,this.hl[3]=1595750129,this.hl[4]=2917565137,this.hl[5]=725511199,this.hl[6]=4215389547,this.hl[7]=327033209,this):new Gt}Gt.prototype.update=function(t,e){XA(this.finalised===!1,"Hash instance finalised");var[n,r]=qh(t,e);this.bytesRead+=r;let i=r+this.pos&-128;this.buffer.set(n.subarray(0,Kr-this.pos),this.pos);let A=this.pos;return r-=Kr-this.pos,r>=0&&(Fr(this.hh,this.hl,this.buffer,128),this.pos=0),r>127&&(Fr(this.hh,this.hl,n.subarray(Kr-A,i-A),i-Kr),r%=128),this.buffer.set(n.subarray(n.byteLength-r)),this.pos=this.bytesRead&127,this.buffer.fill(0,this.pos),this};Gt.prototype.digest=function(t,e=0){if(XA(this.finalised===!1,"Hash instance finalised"),this.finalised=!0,this.buffer.fill(0,this.pos),this.buffer[this.pos]=128,this.pos>111&&(Fr(this.hh,this.hl,this.buffer,128),this.buffer.fill(0),this.pos=0),ni(this.buffer,120,this.bytesRead/536870912|0,this.bytesRead<<3),Fr(this.hh,this.hl,this.buffer,128),t instanceof Uint8Array&&t.byteLength>63){for(let r=0;r<8;r++)ni(t,8*r+e,this.hh[r],this.hl[r]);return t}let n=new Uint8Array(64);for(let r=0;r<8;r++)ni(n,8*r,this.hh[r],this.hl[r]);return typeof t=="string"?Tr.toString(n,t):n};function ni(t,e,n,r){t[e]=n>>24&255,t[e+1]=n>>16&255,t[e+2]=n>>8&255,t[e+3]=n&255,t[e+4]=r>>24&255,t[e+5]=r>>16&255,t[e+6]=r>>8&255,t[e+7]=r&255}function qh(t,e){var n=Tr.from(t,e);return[n,n.byteLength]}function Fr(t,e,n,r){for(var i=new Int32Array(16),A=new Int32Array(16),o,s,f,h,c,C,d,p,w,x,L,Y,B,K,_,U,b,S,m,Q,g,I,l,y,u,E,M=t[0],T=t[1],N=t[2],F=t[3],a=t[4],P=t[5],q=t[6],V=t[7],k=e[0],O=e[1],G=e[2],rt=e[3],J=e[4],Z=e[5],$=e[6],tt=e[7],it=0;r>=128;){for(m=0;m<16;m++)Q=8*m+it,i[m]=n[Q+0]<<24|n[Q+1]<<16|n[Q+2]<<8|n[Q+3],A[m]=n[Q+4]<<24|n[Q+5]<<16|n[Q+6]<<8|n[Q+7];for(m=0;m<80;m++)if(o=M,s=T,f=N,h=F,c=a,C=P,d=q,p=V,w=k,x=O,L=G,Y=rt,B=J,K=Z,_=$,U=tt,g=V,I=tt,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=(a>>>14|J<<18)^(a>>>18|J<<14)^(J>>>9|a<<23),I=(J>>>14|a<<18)^(J>>>18|a<<14)^(a>>>9|J<<23),l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,g=a&P^~a&q,I=J&Z^~J&$,l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,g=WA[m*2],I=WA[m*2+1],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,g=i[m%16],I=A[m%16],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,b=u&65535|E<<16,S=l&65535|y<<16,g=b,I=S,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=(M>>>28|k<<4)^(k>>>2|M<<30)^(k>>>7|M<<25),I=(k>>>28|M<<4)^(M>>>2|k<<30)^(M>>>7|k<<25),l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,g=M&T^M&N^T&N,I=k&O^k&G^O&G,l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,p=u&65535|E<<16,U=l&65535|y<<16,g=h,I=Y,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=b,I=S,l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,h=u&65535|E<<16,Y=l&65535|y<<16,T=o,N=s,F=f,a=h,P=c,q=C,V=d,M=p,O=w,G=x,rt=L,J=Y,Z=B,$=K,tt=_,k=U,m%16===15)for(Q=0;Q<16;Q++)g=i[Q],I=A[Q],l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=i[(Q+9)%16],I=A[(Q+9)%16],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,b=i[(Q+1)%16],S=A[(Q+1)%16],g=(b>>>1|S<<31)^(b>>>8|S<<24)^b>>>7,I=(S>>>1|b<<31)^(S>>>8|b<<24)^(S>>>7|b<<25),l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,b=i[(Q+14)%16],S=A[(Q+14)%16],g=(b>>>19|S<<13)^(S>>>29|b<<3)^b>>>6,I=(S>>>19|b<<13)^(b>>>29|S<<3)^(S>>>6|b<<26),l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,i[Q]=u&65535|E<<16,A[Q]=l&65535|y<<16;g=M,I=k,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[0],I=e[0],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[0]=M=u&65535|E<<16,e[0]=k=l&65535|y<<16,g=T,I=O,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[1],I=e[1],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[1]=T=u&65535|E<<16,e[1]=O=l&65535|y<<16,g=N,I=G,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[2],I=e[2],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[2]=N=u&65535|E<<16,e[2]=G=l&65535|y<<16,g=F,I=rt,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[3],I=e[3],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[3]=F=u&65535|E<<16,e[3]=rt=l&65535|y<<16,g=a,I=J,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[4],I=e[4],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[4]=a=u&65535|E<<16,e[4]=J=l&65535|y<<16,g=P,I=Z,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[5],I=e[5],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[5]=P=u&65535|E<<16,e[5]=Z=l&65535|y<<16,g=q,I=$,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[6],I=e[6],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[6]=q=u&65535|E<<16,e[6]=$=l&65535|y<<16,g=V,I=tt,l=I&65535,y=I>>>16,u=g&65535,E=g>>>16,g=t[7],I=e[7],l+=I&65535,y+=I>>>16,u+=g&65535,E+=g>>>16,y+=l>>>16,u+=y>>>16,E+=u>>>16,t[7]=V=u&65535|E<<16,e[7]=tt=l&65535|y<<16,it+=128,r-=128}}function tr(t){if(!(this instanceof tr))return new tr(t);this.pad=Tr.alloc(128),this.inner=Gt(),this.outer=Gt();let e=Tr.alloc(64);t.byteLength>128&&(Gt().update(t).digest(e),t=e),this.pad.fill(54);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.inner.update(this.pad),this.pad.fill(92);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.outer.update(this.pad),this.pad.fill(0),e.fill(0)}tr.prototype.update=function(t,e){return this.inner.update(t,e),this};tr.prototype.digest=function(t,e=0){return this.outer.update(this.inner.digest()),this.outer.digest(t,e)};Gt.HMAC=tr});var to=D((iy,$A)=>{var Vh=(t,e)=>function(){return e||(0,t[Object.keys(t)[0]])((e={exports:{}}).exports,e),e.exports},Jh=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return n=>{for(var r=n.length,i=new Uint8Array((r-(n[r-1]=="=")-(n[r-2]=="="))*3/4|0),A=0,o=0;A<r;){var s=t[n.charCodeAt(A++)],f=t[n.charCodeAt(A++)],h=t[n.charCodeAt(A++)],c=t[n.charCodeAt(A++)];i[o++]=s<<2|f>>4,i[o++]=f<<4|h>>2,i[o++]=h<<6|c}return i}})(),jh=Vh({"wasm-binary:./sha512.wat"(t,e){e.exports=Jh("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")}}),Wh=jh(),Xh=new WebAssembly.Module(Wh);$A.exports=t=>new WebAssembly.Instance(Xh,t).exports});var eo=D((Ay,oi)=>{var Ke=W(),Nr=St(),qt=typeof WebAssembly<"u"&&to()({imports:{debug:{log(...t){console.log(...t.map(e=>(e>>>0).toString(16).padStart(8,"0")))},log_tee(t){return console.log((t>>>0).toString(16).padStart(8,"0")),t}}}}),Qt=0,Hr=[];oi.exports=yt;var zh=oi.exports.SHA512_BYTES=64,Ai=80,ii=216,er=128;function yt(){if(!(this instanceof yt))return new yt;if(!qt)throw new Error("WASM not loaded. Wait for Sha512.ready(cb)");Hr.length||(Hr.push(Qt),Qt+=ii),this.finalized=!1,this.digestLength=zh,this.pointer=Hr.pop(),this.pos=0,this.wasm=qt,this._memory=new Uint8Array(qt.memory.buffer),this._memory.fill(0,this.pointer,this.pointer+ii),this.pointer+this.digestLength>this._memory.length&&this._realloc(this.pointer+ii)}yt.prototype._realloc=function(t){qt.memory.grow(Math.max(0,Math.ceil(Math.abs(t-this._memory.length)/65536))),this._memory=new Uint8Array(qt.memory.buffer)};yt.prototype.update=function(t,e){Ke(this.finalized===!1,"Hash instance finalized"),Qt%8!==0&&(Qt+=8-Qt%8),Ke(Qt%8===0,"input should be aligned for int64");let[n,r]=$h(t,e);return Ke(n instanceof Uint8Array,"input must be Uint8Array or Buffer"),Qt+t.length>this._memory.length&&this._realloc(Qt+t.length),this._memory.fill(0,Qt,Qt+tc(r,er)-er),this._memory.set(n.subarray(0,er-this.pos),this.pointer+Ai+this.pos),this._memory.set(n.subarray(er-this.pos),Qt),this.pos=this.pos+r&127,qt.sha512(this.pointer,Qt,r,0),this};yt.prototype.digest=function(t,e=0){Ke(this.finalized===!1,"Hash instance finalized"),this.finalized=!0,Hr.push(this.pointer);let n=this.pointer+Ai+this.pos;this._memory.fill(0,n,this.pointer+Ai+er),qt.sha512(this.pointer,Qt,0,1);let r=this._memory.subarray(this.pointer,this.pointer+this.digestLength);if(!t)return r;if(typeof t=="string")return Nr.toString(r,t);Ke(t instanceof Uint8Array,"output must be Uint8Array or Buffer"),Ke(t.byteLength>=this.digestLength+e,"output must have at least 'SHA512_BYTES' bytes remaining");for(let i=0;i<this.digestLength;i++)t[i+e]=r[i];return t};yt.WASM=qt;yt.WASM_SUPPORTED=typeof WebAssembly<"u";yt.ready=function(t){return t||(t=Zh),qt?(t(),Promise.resolve()):t(new Error("WebAssembly not supported"))};yt.prototype.ready=yt.ready;function rr(t){if(!(this instanceof rr))return new rr(t);this.pad=Nr.alloc(128),this.inner=yt(),this.outer=yt();let e=Nr.alloc(64);t.byteLength>128&&(yt().update(t).digest(e),t=e),this.pad.fill(54);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.inner.update(this.pad),this.pad.fill(92);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.outer.update(this.pad),this.pad.fill(0),e.fill(0)}rr.prototype.update=function(t,e){return this.inner.update(t,e),this};rr.prototype.digest=function(t,e=0){return this.outer.update(this.inner.digest()),this.outer.digest(t,e)};yt.HMAC=rr;function Zh(){}function $h(t,e){var n=Nr.from(t,e);return[n,n.byteLength]}function tc(t,e){return t+e-1&-e}});var si=D((sy,ie)=>{var ec=ZA(),kr=eo(),ro=ec;ie.exports=function(){return new ro};ie.exports.ready=function(t){kr.ready(function(){t()})};ie.exports.WASM_SUPPORTED=kr.SUPPORTED;ie.exports.WASM_LOADED=!1;var oy=ie.exports.SHA512_BYTES=64;kr.ready(function(t){t||(ie.exports.WASM_LOADED=!0,ie.exports=ro=kr)})});var Ao=D((ay,io)=>{var{crypto_verify_32:rc}=pe(),no=si(),Pr=W(),ai=32,fi=32;function nc(t,e,n){Pr(t.byteLength===ai,"out should be 'crypto_auth_BYTES' in length"),Pr(n.byteLength===fi,"key should be 'crypto_auth_KEYBYTES' in length");let r=new Uint8Array(64),i=no.HMAC(n);i.update(e),i.digest(r),t.set(r.subarray(0,32))}function ic(t,e,n){Pr(t.byteLength===ai,"h should be 'crypto_auth_BYTES' in length"),Pr(n.byteLength===fi,"key should be 'crypto_auth_KEYBYTES' in length");let r=no.HMAC(n).update(e).digest();return rc(t,0,r,0)}io.exports={crypto_auth_BYTES:ai,crypto_auth_KEYBYTES:fi,crypto_auth:nc,crypto_auth_verify:ic}});var nr=D((fy,so)=>{var Ac=si(),oc=W();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");var hi=64,sc=hi;function oo(t,e,n){return oc(t.byteLength===hi,"out must be 'crypto_hash_sha512_BYTES' bytes long"),Ac().update(e.subarray(0,n)).digest(t),0}function ac(t,e,n){return oo(t,e,n)}so.exports={crypto_hash:ac,crypto_hash_sha512:oo,crypto_hash_sha512_BYTES:hi,crypto_hash_BYTES:sc}});var Ii=D((cy,co)=>{if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");var mt=function(t){var e,n=new Float64Array(16);if(t)for(e=0;e<t.length;e++)n[e]=t[e];return n},hy=new Uint8Array(16),ao=new Uint8Array(32);ao[0]=9;var fc=mt(),hc=mt([1]),cc=mt([56129,1]),gc=mt([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),Ic=mt([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),yc=mt([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),uc=mt([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),lc=mt([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function Ec(t,e,n){for(var r=0;r<16;r++)t[r]=e[r]+n[r]}function dc(t,e,n){for(var r=0;r<16;r++)t[r]=e[r]-n[r]}function gi(t,e,n){var r,i,A=0,o=0,s=0,f=0,h=0,c=0,C=0,d=0,p=0,w=0,x=0,L=0,Y=0,B=0,K=0,_=0,U=0,b=0,S=0,m=0,Q=0,g=0,I=0,l=0,y=0,u=0,E=0,M=0,T=0,N=0,F=0,a=n[0],P=n[1],q=n[2],V=n[3],k=n[4],O=n[5],G=n[6],rt=n[7],J=n[8],Z=n[9],$=n[10],tt=n[11],it=n[12],at=n[13],ft=n[14],ht=n[15];r=e[0],A+=r*a,o+=r*P,s+=r*q,f+=r*V,h+=r*k,c+=r*O,C+=r*G,d+=r*rt,p+=r*J,w+=r*Z,x+=r*$,L+=r*tt,Y+=r*it,B+=r*at,K+=r*ft,_+=r*ht,r=e[1],o+=r*a,s+=r*P,f+=r*q,h+=r*V,c+=r*k,C+=r*O,d+=r*G,p+=r*rt,w+=r*J,x+=r*Z,L+=r*$,Y+=r*tt,B+=r*it,K+=r*at,_+=r*ft,U+=r*ht,r=e[2],s+=r*a,f+=r*P,h+=r*q,c+=r*V,C+=r*k,d+=r*O,p+=r*G,w+=r*rt,x+=r*J,L+=r*Z,Y+=r*$,B+=r*tt,K+=r*it,_+=r*at,U+=r*ft,b+=r*ht,r=e[3],f+=r*a,h+=r*P,c+=r*q,C+=r*V,d+=r*k,p+=r*O,w+=r*G,x+=r*rt,L+=r*J,Y+=r*Z,B+=r*$,K+=r*tt,_+=r*it,U+=r*at,b+=r*ft,S+=r*ht,r=e[4],h+=r*a,c+=r*P,C+=r*q,d+=r*V,p+=r*k,w+=r*O,x+=r*G,L+=r*rt,Y+=r*J,B+=r*Z,K+=r*$,_+=r*tt,U+=r*it,b+=r*at,S+=r*ft,m+=r*ht,r=e[5],c+=r*a,C+=r*P,d+=r*q,p+=r*V,w+=r*k,x+=r*O,L+=r*G,Y+=r*rt,B+=r*J,K+=r*Z,_+=r*$,U+=r*tt,b+=r*it,S+=r*at,m+=r*ft,Q+=r*ht,r=e[6],C+=r*a,d+=r*P,p+=r*q,w+=r*V,x+=r*k,L+=r*O,Y+=r*G,B+=r*rt,K+=r*J,_+=r*Z,U+=r*$,b+=r*tt,S+=r*it,m+=r*at,Q+=r*ft,g+=r*ht,r=e[7],d+=r*a,p+=r*P,w+=r*q,x+=r*V,L+=r*k,Y+=r*O,B+=r*G,K+=r*rt,_+=r*J,U+=r*Z,b+=r*$,S+=r*tt,m+=r*it,Q+=r*at,g+=r*ft,I+=r*ht,r=e[8],p+=r*a,w+=r*P,x+=r*q,L+=r*V,Y+=r*k,B+=r*O,K+=r*G,_+=r*rt,U+=r*J,b+=r*Z,S+=r*$,m+=r*tt,Q+=r*it,g+=r*at,I+=r*ft,l+=r*ht,r=e[9],w+=r*a,x+=r*P,L+=r*q,Y+=r*V,B+=r*k,K+=r*O,_+=r*G,U+=r*rt,b+=r*J,S+=r*Z,m+=r*$,Q+=r*tt,g+=r*it,I+=r*at,l+=r*ft,y+=r*ht,r=e[10],x+=r*a,L+=r*P,Y+=r*q,B+=r*V,K+=r*k,_+=r*O,U+=r*G,b+=r*rt,S+=r*J,m+=r*Z,Q+=r*$,g+=r*tt,I+=r*it,l+=r*at,y+=r*ft,u+=r*ht,r=e[11],L+=r*a,Y+=r*P,B+=r*q,K+=r*V,_+=r*k,U+=r*O,b+=r*G,S+=r*rt,m+=r*J,Q+=r*Z,g+=r*$,I+=r*tt,l+=r*it,y+=r*at,u+=r*ft,E+=r*ht,r=e[12],Y+=r*a,B+=r*P,K+=r*q,_+=r*V,U+=r*k,b+=r*O,S+=r*G,m+=r*rt,Q+=r*J,g+=r*Z,I+=r*$,l+=r*tt,y+=r*it,u+=r*at,E+=r*ft,M+=r*ht,r=e[13],B+=r*a,K+=r*P,_+=r*q,U+=r*V,b+=r*k,S+=r*O,m+=r*G,Q+=r*rt,g+=r*J,I+=r*Z,l+=r*$,y+=r*tt,u+=r*it,E+=r*at,M+=r*ft,T+=r*ht,r=e[14],K+=r*a,_+=r*P,U+=r*q,b+=r*V,S+=r*k,m+=r*O,Q+=r*G,g+=r*rt,I+=r*J,l+=r*Z,y+=r*$,u+=r*tt,E+=r*it,M+=r*at,T+=r*ft,N+=r*ht,r=e[15],_+=r*a,U+=r*P,b+=r*q,S+=r*V,m+=r*k,Q+=r*O,g+=r*G,I+=r*rt,l+=r*J,y+=r*Z,u+=r*$,E+=r*tt,M+=r*it,T+=r*at,N+=r*ft,F+=r*ht,A+=38*U,o+=38*b,s+=38*S,f+=38*m,h+=38*Q,c+=38*g,C+=38*I,d+=38*l,p+=38*y,w+=38*u,x+=38*E,L+=38*M,Y+=38*T,B+=38*N,K+=38*F,i=1,r=A+i+65535,i=Math.floor(r/65536),A=r-i*65536,r=o+i+65535,i=Math.floor(r/65536),o=r-i*65536,r=s+i+65535,i=Math.floor(r/65536),s=r-i*65536,r=f+i+65535,i=Math.floor(r/65536),f=r-i*65536,r=h+i+65535,i=Math.floor(r/65536),h=r-i*65536,r=c+i+65535,i=Math.floor(r/65536),c=r-i*65536,r=C+i+65535,i=Math.floor(r/65536),C=r-i*65536,r=d+i+65535,i=Math.floor(r/65536),d=r-i*65536,r=p+i+65535,i=Math.floor(r/65536),p=r-i*65536,r=w+i+65535,i=Math.floor(r/65536),w=r-i*65536,r=x+i+65535,i=Math.floor(r/65536),x=r-i*65536,r=L+i+65535,i=Math.floor(r/65536),L=r-i*65536,r=Y+i+65535,i=Math.floor(r/65536),Y=r-i*65536,r=B+i+65535,i=Math.floor(r/65536),B=r-i*65536,r=K+i+65535,i=Math.floor(r/65536),K=r-i*65536,r=_+i+65535,i=Math.floor(r/65536),_=r-i*65536,A+=i-1+37*(i-1),i=1,r=A+i+65535,i=Math.floor(r/65536),A=r-i*65536,r=o+i+65535,i=Math.floor(r/65536),o=r-i*65536,r=s+i+65535,i=Math.floor(r/65536),s=r-i*65536,r=f+i+65535,i=Math.floor(r/65536),f=r-i*65536,r=h+i+65535,i=Math.floor(r/65536),h=r-i*65536,r=c+i+65535,i=Math.floor(r/65536),c=r-i*65536,r=C+i+65535,i=Math.floor(r/65536),C=r-i*65536,r=d+i+65535,i=Math.floor(r/65536),d=r-i*65536,r=p+i+65535,i=Math.floor(r/65536),p=r-i*65536,r=w+i+65535,i=Math.floor(r/65536),w=r-i*65536,r=x+i+65535,i=Math.floor(r/65536),x=r-i*65536,r=L+i+65535,i=Math.floor(r/65536),L=r-i*65536,r=Y+i+65535,i=Math.floor(r/65536),Y=r-i*65536,r=B+i+65535,i=Math.floor(r/65536),B=r-i*65536,r=K+i+65535,i=Math.floor(r/65536),K=r-i*65536,r=_+i+65535,i=Math.floor(r/65536),_=r-i*65536,A+=i-1+37*(i-1),t[0]=A,t[1]=o,t[2]=s,t[3]=f,t[4]=h,t[5]=c,t[6]=C,t[7]=d,t[8]=p,t[9]=w,t[10]=x,t[11]=L,t[12]=Y,t[13]=B,t[14]=K,t[15]=_}function fo(t,e){gi(t,e,e)}function ho(t,e,n){for(var r,i=~(n-1),A=0;A<16;A++)r=i&(t[A]^e[A]),t[A]^=r,e[A]^=r}function Cc(t,e){var n,r,i,A=mt(),o=mt();for(n=0;n<16;n++)o[n]=e[n];for(ci(o),ci(o),ci(o),r=0;r<2;r++){for(A[0]=o[0]-65517,n=1;n<15;n++)A[n]=o[n]-65535-(A[n-1]>>16&1),A[n-1]&=65535;A[15]=o[15]-32767-(A[14]>>16&1),i=A[15]>>16&1,A[14]&=65535,ho(o,A,1-i)}for(n=0;n<16;n++)t[2*n]=o[n]&255,t[2*n+1]=o[n]>>8}function xc(t,e){var n;for(n=0;n<16;n++)t[n]=e[2*n]+(e[2*n+1]<<8);t[15]&=32767}function pc(t,e){var n=mt(),r;for(r=0;r<16;r++)n[r]=e[r];for(r=253;r>=0;r--)fo(n,n),r!==2&&r!==4&&gi(n,n,e);for(r=0;r<16;r++)t[r]=n[r]}function ci(t){var e,n,r=1;for(e=0;e<16;e++)n=t[e]+r+65535,r=Math.floor(n/65536),t[e]=n-r*65536;t[0]+=r-1+37*(r-1)}co.exports={gf:mt,A:Ec,Z:dc,M:gi,S:fo,sel25519:ho,pack25519:Cc,unpack25519:xc,inv25519:pc,gf0:fc,gf1:hc,_9:ao,_121665:cc,D:gc,D2:Ic,X:yc,Y:uc,I:lc}});var ir=D((gy,yo)=>{var{_9:Bc,_121665:Qc,gf:Te,inv25519:bc,pack25519:wc,unpack25519:_c,sel25519:Rr,A:Or,M:Be,Z:Gr,S:qr}=Ii(),ui=32,go=32;yo.exports={crypto_scalarmult:Io,crypto_scalarmult_base:Sc,crypto_scalarmult_BYTES:ui,crypto_scalarmult_SCALARBYTES:go};function Io(t,e,n){yi(t,ui),yi(e,go),yi(n,ui);var r=new Uint8Array(32),i=new Float64Array(80),A,o,s=Te(),f=Te(),h=Te(),c=Te(),C=Te(),d=Te();for(o=0;o<31;o++)r[o]=e[o];for(r[31]=e[31]&127|64,r[0]&=248,_c(i,n),o=0;o<16;o++)f[o]=i[o],c[o]=s[o]=h[o]=0;for(s[0]=c[0]=1,o=254;o>=0;--o)A=r[o>>>3]>>>(o&7)&1,Rr(s,f,A),Rr(h,c,A),Or(C,s,h),Gr(s,s,h),Or(h,f,c),Gr(f,f,c),qr(c,C),qr(d,s),Be(s,h,s),Be(h,f,C),Or(C,s,h),Gr(s,s,h),qr(f,s),Gr(h,c,d),Be(s,h,Qc),Or(s,s,c),Be(h,h,s),Be(s,c,d),Be(c,f,i),qr(f,C),Rr(s,f,A),Rr(h,c,A);for(o=0;o<16;o++)i[o+16]=s[o],i[o+32]=h[o],i[o+48]=f[o],i[o+64]=c[o];var p=i.subarray(32),w=i.subarray(16);return bc(p,p),Be(w,w,p),wc(t,w),0}function Sc(t,e){return Io(t,e,Bc)}function yi(t,e){if(!t||e&&t.length<e)throw new Error("Argument must be a buffer"+(e?" of length "+e:""))}});var lo=D((Iy,uo)=>{var mc=(t,e)=>function(){return e||(0,t[Object.keys(t)[0]])((e={exports:{}}).exports,e),e.exports},Dc=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return n=>{for(var r=n.length,i=new Uint8Array((r-(n[r-1]=="=")-(n[r-2]=="="))*3/4|0),A=0,o=0;A<r;){var s=t[n.charCodeAt(A++)],f=t[n.charCodeAt(A++)],h=t[n.charCodeAt(A++)],c=t[n.charCodeAt(A++)];i[o++]=s<<2|f>>4,i[o++]=f<<4|h>>2,i[o++]=h<<6|c}return i}})(),Uc=mc({"wasm-binary:./blake2b.wat"(t,e){e.exports=Dc("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")}}),Lc=Uc(),vc=WebAssembly.compile(Lc);uo.exports=async t=>(await WebAssembly.instantiate(await vc,t)).exports});var wo=D((ly,Ft)=>{var bt=W(),Yc=St(),Jt=null,Eo=typeof WebAssembly<"u"&&lo()().then(t=>{Jt=t}),Vt=64,Vr=[];Ft.exports=ut;var Co=Ft.exports.BYTES_MIN=16,xo=Ft.exports.BYTES_MAX=64,yy=Ft.exports.BYTES=32,po=Ft.exports.KEYBYTES_MIN=16,Bo=Ft.exports.KEYBYTES_MAX=64,uy=Ft.exports.KEYBYTES=32,Qo=Ft.exports.SALTBYTES=16,bo=Ft.exports.PERSONALBYTES=16;function ut(t,e,n,r,i){if(!(this instanceof ut))return new ut(t,e,n,r,i);if(!Jt)throw new Error("WASM not loaded. Wait for Blake2b.ready(cb)");t||(t=32),i!==!0&&(bt(t>=Co,"digestLength must be at least "+Co+", was given "+t),bt(t<=xo,"digestLength must be at most "+xo+", was given "+t),e!=null&&(bt(e instanceof Uint8Array,"key must be Uint8Array or Buffer"),bt(e.length>=po,"key must be at least "+po+", was given "+e.length),bt(e.length<=Bo,"key must be at least "+Bo+", was given "+e.length)),n!=null&&(bt(n instanceof Uint8Array,"salt must be Uint8Array or Buffer"),bt(n.length===Qo,"salt must be exactly "+Qo+", was given "+n.length)),r!=null&&(bt(r instanceof Uint8Array,"personal must be Uint8Array or Buffer"),bt(r.length===bo,"personal must be exactly "+bo+", was given "+r.length))),Vr.length||(Vr.push(Vt),Vt+=216),this.digestLength=t,this.finalized=!1,this.pointer=Vr.pop(),this._memory=new Uint8Array(Jt.memory.buffer),this._memory.fill(0,0,64),this._memory[0]=this.digestLength,this._memory[1]=e?e.length:0,this._memory[2]=1,this._memory[3]=1,n&&this._memory.set(n,32),r&&this._memory.set(r,48),this.pointer+216>this._memory.length&&this._realloc(this.pointer+216),Jt.blake2b_init(this.pointer,this.digestLength),e&&(this.update(e),this._memory.fill(0,Vt,Vt+e.length),this._memory[this.pointer+200]=128)}ut.prototype._realloc=function(t){Jt.memory.grow(Math.max(0,Math.ceil(Math.abs(t-this._memory.length)/65536))),this._memory=new Uint8Array(Jt.memory.buffer)};ut.prototype.update=function(t){return bt(this.finalized===!1,"Hash instance finalized"),bt(t instanceof Uint8Array,"input must be Uint8Array or Buffer"),Vt+t.length>this._memory.length&&this._realloc(Vt+t.length),this._memory.set(t,Vt),Jt.blake2b_update(this.pointer,Vt,Vt+t.length),this};ut.prototype.digest=function(t){if(bt(this.finalized===!1,"Hash instance finalized"),this.finalized=!0,Vr.push(this.pointer),Jt.blake2b_final(this.pointer),!t||t==="binary")return this._memory.slice(this.pointer+128,this.pointer+128+this.digestLength);if(typeof t=="string")return Yc.toString(this._memory,t,this.pointer+128,this.pointer+128+this.digestLength);bt(t instanceof Uint8Array&&t.length>=this.digestLength,"input must be Uint8Array or Buffer");for(var e=0;e<this.digestLength;e++)t[e]=this._memory[this.pointer+128+e];return t};ut.prototype.final=ut.prototype.digest;ut.WASM=Jt;ut.SUPPORTED=typeof WebAssembly<"u";ut.ready=function(t){return t||(t=Mc),Eo?Eo.then(()=>t(),t):t(new Error("WebAssembly not supported"))};ut.prototype.ready=ut.ready;ut.prototype.getPartialHash=function(){return this._memory.slice(this.pointer,this.pointer+216)};ut.prototype.setPartialHash=function(t){this._memory.set(t,this.pointer)};function Mc(){}});var li=D((Cy,lt)=>{var Dt=W(),or=wo();function Jr(t,e,n){var r=t[e]+t[n],i=t[e+1]+t[n+1];r>=4294967296&&i++,t[e]=r,t[e+1]=i}function _o(t,e,n,r){var i=t[e]+n;n<0&&(i+=4294967296);var A=t[e+1]+r;i>=4294967296&&A++,t[e]=i,t[e+1]=A}function Yo(t,e){return t[e]^t[e+1]<<8^t[e+2]<<16^t[e+3]<<24}function Ae(t,e,n,r,i,A){var o=Ar[i],s=Ar[i+1],f=Ar[A],h=Ar[A+1];Jr(H,t,e),_o(H,t,o,s);var c=H[r]^H[t],C=H[r+1]^H[t+1];H[r]=C,H[r+1]=c,Jr(H,n,r),c=H[e]^H[n],C=H[e+1]^H[n+1],H[e]=c>>>24^C<<8,H[e+1]=C>>>24^c<<8,Jr(H,t,e),_o(H,t,f,h),c=H[r]^H[t],C=H[r+1]^H[t+1],H[r]=c>>>16^C<<16,H[r+1]=C>>>16^c<<16,Jr(H,n,r),c=H[e]^H[n],C=H[e+1]^H[n+1],H[e]=C>>>31^c<<1,H[e+1]=c>>>31^C<<1}var Mo=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),Kc=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3],ct=new Uint8Array(Kc.map(function(t){return t*2})),H=new Uint32Array(32),Ar=new Uint32Array(32);function Ko(t,e){var n=0;for(n=0;n<16;n++)H[n]=t.h[n],H[n+16]=Mo[n];for(H[24]=H[24]^t.t,H[25]=H[25]^t.t/4294967296,e&&(H[28]=~H[28],H[29]=~H[29]),n=0;n<32;n++)Ar[n]=Yo(t.b,4*n);for(n=0;n<12;n++)Ae(0,8,16,24,ct[n*16+0],ct[n*16+1]),Ae(2,10,18,26,ct[n*16+2],ct[n*16+3]),Ae(4,12,20,28,ct[n*16+4],ct[n*16+5]),Ae(6,14,22,30,ct[n*16+6],ct[n*16+7]),Ae(0,10,20,30,ct[n*16+8],ct[n*16+9]),Ae(2,12,22,24,ct[n*16+10],ct[n*16+11]),Ae(4,14,16,26,ct[n*16+12],ct[n*16+13]),Ae(6,8,18,28,ct[n*16+14],ct[n*16+15]);for(n=0;n<16;n++)t.h[n]=t.h[n]^H[n]^H[n+16]}var oe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function Fe(t,e,n,r){oe.fill(0),this.b=new Uint8Array(128),this.h=new Uint32Array(16),this.t=0,this.c=0,this.outlen=t,oe[0]=t,e&&(oe[1]=e.length),oe[2]=1,oe[3]=1,n&&oe.set(n,32),r&&oe.set(r,48);for(var i=0;i<16;i++)this.h[i]=Mo[i]^Yo(oe,i*4);e&&(To(this,e),this.c=128)}Fe.prototype.update=function(t){return Dt(t instanceof Uint8Array,"input must be Uint8Array or Buffer"),To(this,t),this};Fe.prototype.digest=function(t){var e=!t||t==="binary"||t==="hex"?new Uint8Array(this.outlen):t;return Dt(e instanceof Uint8Array,'out must be "binary", "hex", Uint8Array, or Buffer'),Dt(e.length>=this.outlen,"out must have at least outlen bytes of space"),Tc(this,e),t==="hex"?Fc(e):e};Fe.prototype.final=Fe.prototype.digest;Fe.ready=function(t){or.ready(function(){t()})};function To(t,e){for(var n=0;n<e.length;n++)t.c===128&&(t.t+=t.c,Ko(t,!1),t.c=0),t.b[t.c++]=e[n]}function Tc(t,e){for(t.t+=t.c;t.c<128;)t.b[t.c++]=0;Ko(t,!0);for(var n=0;n<t.outlen;n++)e[n]=t.h[n>>2]>>8*(n&3);return e}function Fc(t){for(var e="",n=0;n<t.length;n++)e+=Hc(t[n]);return e}function Hc(t){return t<16?"0"+t.toString(16):t.toString(16)}var Nc=Fe;lt.exports=function(e,n,r,i,A){return A!==!0&&(Dt(e>=So,"outlen must be at least "+So+", was given "+e),Dt(e<=mo,"outlen must be at most "+mo+", was given "+e),n!=null&&(Dt(n instanceof Uint8Array,"key must be Uint8Array or Buffer"),Dt(n.length>=Do,"key must be at least "+Do+", was given "+n.length),Dt(n.length<=Uo,"key must be at most "+Uo+", was given "+n.length)),r!=null&&(Dt(r instanceof Uint8Array,"salt must be Uint8Array or Buffer"),Dt(r.length===Lo,"salt must be exactly "+Lo+", was given "+r.length)),i!=null&&(Dt(i instanceof Uint8Array,"personal must be Uint8Array or Buffer"),Dt(i.length===vo,"personal must be exactly "+vo+", was given "+i.length))),new Nc(e,n,r,i)};lt.exports.ready=function(t){or.ready(function(){t()})};lt.exports.WASM_SUPPORTED=or.SUPPORTED;lt.exports.WASM_LOADED=!1;var So=lt.exports.BYTES_MIN=16,mo=lt.exports.BYTES_MAX=64,Ey=lt.exports.BYTES=32,Do=lt.exports.KEYBYTES_MIN=16,Uo=lt.exports.KEYBYTES_MAX=64,dy=lt.exports.KEYBYTES=32,Lo=lt.exports.SALTBYTES=16,vo=lt.exports.PERSONALBYTES=16;or.ready(function(t){t||(lt.exports.WASM_LOADED=!0,lt.exports=or)})});var jr=D((xy,gt)=>{var wt=li();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");gt.exports.crypto_generichash_PRIMITIVE="blake2b";gt.exports.crypto_generichash_BYTES_MIN=wt.BYTES_MIN;gt.exports.crypto_generichash_BYTES_MAX=wt.BYTES_MAX;gt.exports.crypto_generichash_BYTES=wt.BYTES;gt.exports.crypto_generichash_KEYBYTES_MIN=wt.KEYBYTES_MIN;gt.exports.crypto_generichash_KEYBYTES_MAX=wt.KEYBYTES_MAX;gt.exports.crypto_generichash_KEYBYTES=wt.KEYBYTES;gt.exports.crypto_generichash_WASM_SUPPORTED=wt.WASM_SUPPORTED;gt.exports.crypto_generichash_WASM_LOADED=!1;gt.exports.crypto_generichash=function(t,e,n){wt(t.length,n).update(e).final(t)};gt.exports.crypto_generichash_ready=wt.ready;gt.exports.crypto_generichash_batch=function(t,e,n){for(var r=wt(t.length,n),i=0;i<e.length;i++)r.update(e[i]);r.final(t)};gt.exports.crypto_generichash_instance=function(t,e){return e==null&&(e=gt.exports.crypto_generichash_BYTES),wt(e,t)};wt.ready(function(t){gt.exports.crypto_generichash_WASM_LOADED=wt.WASM_LOADED})});var Ho=D((py,Fo)=>{var kc=(t,e)=>function(){return e||(0,t[Object.keys(t)[0]])((e={exports:{}}).exports,e),e.exports},Pc=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return n=>{for(var r=n.length,i=new Uint8Array((r-(n[r-1]=="=")-(n[r-2]=="="))*3/4|0),A=0,o=0;A<r;){var s=t[n.charCodeAt(A++)],f=t[n.charCodeAt(A++)],h=t[n.charCodeAt(A++)],c=t[n.charCodeAt(A++)];i[o++]=s<<2|f>>4,i[o++]=f<<4|h>>2,i[o++]=h<<6|c}return i}})(),Rc=kc({"wasm-binary:./xsalsa20.wat"(t,e){e.exports=Pc("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")}}),Oc=Rc(),Gc=new WebAssembly.Module(Oc);Fo.exports=t=>new WebAssembly.Instance(Gc,t).exports});var di=D((By,Po)=>{var sr=typeof WebAssembly<"u"&&Ho()(),Xr=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]),Ht=144,He=Ht,Wr=[];Po.exports=Nt;Nt.NONCEBYTES=24;Nt.KEYBYTES=32;Nt.core_hsalsa20=ko;Nt.SIGMA=Xr;function Nt(t,e){if(!(this instanceof Nt))return new Nt(t,e);if(!t||t.length<24)throw new Error("nonce must be at least 24 bytes");if(!e||e.length<32)throw new Error("key must be at least 32 bytes");this._xor=sr?new zr(t,e):new Ei(t,e)}Nt.prototype.update=function(t,e){if(!t)throw new Error("input must be Uint8Array or Buffer");return e||(e=new Uint8Array(t.length)),t.length&&this._xor.update(t,e),e};Nt.prototype.final=Nt.prototype.finalize=function(){this._xor.finalize(),this._xor=null};function zr(t,e){Wr.length||(Wr.push(Ht),Ht+=64),this._pointer=Wr.pop(),this._nonce=this._pointer+8,this._key=this._nonce+24,this._overflow=0,this._memory=new Uint8Array(sr.memory.buffer),this._memory.fill(0,this._pointer,this._pointer+8),this._memory.set(t,this._nonce),this._memory.set(e,this._key)}zr.prototype.realloc=function(t){sr.memory.grow(Math.ceil(Math.abs(t-this._memory.length)/65536)),this._memory=new Uint8Array(sr.memory.buffer)};zr.prototype.update=function(t,e){var n=this._overflow+t.length,r=Ht+this._overflow;He=Ht+n,He>=this._memory.length&&this.realloc(He),this._memory.set(t,r),sr.xsalsa20_xor(this._pointer,Ht,Ht,n,this._nonce,this._key),e.set(this._memory.subarray(r,Ht+n)),this._overflow=n&63};zr.prototype.finalize=function(){this._memory.fill(0,this._pointer,this._key+32),He>Ht&&(this._memory.fill(0,Ht,He),He=0),Wr.push(this._pointer)};function Ei(t,e){this._s=new Uint8Array(32),this._z=new Uint8Array(16),this._overflow=0,ko(this._s,t,e,Xr);for(var n=0;n<8;n++)this._z[n]=t[n+16]}Ei.prototype.update=function(t,e){for(var n=new Uint8Array(64),r=0,i=this._overflow,A=t.length+this._overflow,o=this._z,s=-this._overflow,f=-this._overflow;A>=64;){for(No(n,o,this._s,Xr);i<64;i++)e[f+i]=t[s+i]^n[i];for(r=1,i=8;i<16;i++)r+=o[i]&255|0,o[i]=r&255,r>>>=8;A-=64,f+=64,s+=64,i=0}if(A>0)for(No(n,o,this._s,Xr);i<A;i++)e[f+i]=t[s+i]^n[i];this._overflow=A&63};Ei.prototype.finalize=function(){this._s.fill(0),this._z.fill(0)};function No(t,e,n,r){for(var i=r[0]&255|(r[1]&255)<<8|(r[2]&255)<<16|(r[3]&255)<<24,A=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,o=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,s=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,f=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,h=r[4]&255|(r[5]&255)<<8|(r[6]&255)<<16|(r[7]&255)<<24,c=e[0]&255|(e[1]&255)<<8|(e[2]&255)<<16|(e[3]&255)<<24,C=e[4]&255|(e[5]&255)<<8|(e[6]&255)<<16|(e[7]&255)<<24,d=e[8]&255|(e[9]&255)<<8|(e[10]&255)<<16|(e[11]&255)<<24,p=e[12]&255|(e[13]&255)<<8|(e[14]&255)<<16|(e[15]&255)<<24,w=r[8]&255|(r[9]&255)<<8|(r[10]&255)<<16|(r[11]&255)<<24,x=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,L=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,Y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,B=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,K=r[12]&255|(r[13]&255)<<8|(r[14]&255)<<16|(r[15]&255)<<24,_=i,U=A,b=o,S=s,m=f,Q=h,g=c,I=C,l=d,y=p,u=w,E=x,M=L,T=Y,N=B,F=K,a,P=0;P<20;P+=2)a=_+M|0,m^=a<<7|a>>>25,a=m+_|0,l^=a<<9|a>>>23,a=l+m|0,M^=a<<13|a>>>19,a=M+l|0,_^=a<<18|a>>>14,a=Q+U|0,y^=a<<7|a>>>25,a=y+Q|0,T^=a<<9|a>>>23,a=T+y|0,U^=a<<13|a>>>19,a=U+T|0,Q^=a<<18|a>>>14,a=u+g|0,N^=a<<7|a>>>25,a=N+u|0,b^=a<<9|a>>>23,a=b+N|0,g^=a<<13|a>>>19,a=g+b|0,u^=a<<18|a>>>14,a=F+E|0,S^=a<<7|a>>>25,a=S+F|0,I^=a<<9|a>>>23,a=I+S|0,E^=a<<13|a>>>19,a=E+I|0,F^=a<<18|a>>>14,a=_+S|0,U^=a<<7|a>>>25,a=U+_|0,b^=a<<9|a>>>23,a=b+U|0,S^=a<<13|a>>>19,a=S+b|0,_^=a<<18|a>>>14,a=Q+m|0,g^=a<<7|a>>>25,a=g+Q|0,I^=a<<9|a>>>23,a=I+g|0,m^=a<<13|a>>>19,a=m+I|0,Q^=a<<18|a>>>14,a=u+y|0,E^=a<<7|a>>>25,a=E+u|0,l^=a<<9|a>>>23,a=l+E|0,y^=a<<13|a>>>19,a=y+l|0,u^=a<<18|a>>>14,a=F+N|0,M^=a<<7|a>>>25,a=M+F|0,T^=a<<9|a>>>23,a=T+M|0,N^=a<<13|a>>>19,a=N+T|0,F^=a<<18|a>>>14;_=_+i|0,U=U+A|0,b=b+o|0,S=S+s|0,m=m+f|0,Q=Q+h|0,g=g+c|0,I=I+C|0,l=l+d|0,y=y+p|0,u=u+w|0,E=E+x|0,M=M+L|0,T=T+Y|0,N=N+B|0,F=F+K|0,t[0]=_>>>0&255,t[1]=_>>>8&255,t[2]=_>>>16&255,t[3]=_>>>24&255,t[4]=U>>>0&255,t[5]=U>>>8&255,t[6]=U>>>16&255,t[7]=U>>>24&255,t[8]=b>>>0&255,t[9]=b>>>8&255,t[10]=b>>>16&255,t[11]=b>>>24&255,t[12]=S>>>0&255,t[13]=S>>>8&255,t[14]=S>>>16&255,t[15]=S>>>24&255,t[16]=m>>>0&255,t[17]=m>>>8&255,t[18]=m>>>16&255,t[19]=m>>>24&255,t[20]=Q>>>0&255,t[21]=Q>>>8&255,t[22]=Q>>>16&255,t[23]=Q>>>24&255,t[24]=g>>>0&255,t[25]=g>>>8&255,t[26]=g>>>16&255,t[27]=g>>>24&255,t[28]=I>>>0&255,t[29]=I>>>8&255,t[30]=I>>>16&255,t[31]=I>>>24&255,t[32]=l>>>0&255,t[33]=l>>>8&255,t[34]=l>>>16&255,t[35]=l>>>24&255,t[36]=y>>>0&255,t[37]=y>>>8&255,t[38]=y>>>16&255,t[39]=y>>>24&255,t[40]=u>>>0&255,t[41]=u>>>8&255,t[42]=u>>>16&255,t[43]=u>>>24&255,t[44]=E>>>0&255,t[45]=E>>>8&255,t[46]=E>>>16&255,t[47]=E>>>24&255,t[48]=M>>>0&255,t[49]=M>>>8&255,t[50]=M>>>16&255,t[51]=M>>>24&255,t[52]=T>>>0&255,t[53]=T>>>8&255,t[54]=T>>>16&255,t[55]=T>>>24&255,t[56]=N>>>0&255,t[57]=N>>>8&255,t[58]=N>>>16&255,t[59]=N>>>24&255,t[60]=F>>>0&255,t[61]=F>>>8&255,t[62]=F>>>16&255,t[63]=F>>>24&255}function ko(t,e,n,r){for(var i=r[0]&255|(r[1]&255)<<8|(r[2]&255)<<16|(r[3]&255)<<24,A=n[0]&255|(n[1]&255)<<8|(n[2]&255)<<16|(n[3]&255)<<24,o=n[4]&255|(n[5]&255)<<8|(n[6]&255)<<16|(n[7]&255)<<24,s=n[8]&255|(n[9]&255)<<8|(n[10]&255)<<16|(n[11]&255)<<24,f=n[12]&255|(n[13]&255)<<8|(n[14]&255)<<16|(n[15]&255)<<24,h=r[4]&255|(r[5]&255)<<8|(r[6]&255)<<16|(r[7]&255)<<24,c=e[0]&255|(e[1]&255)<<8|(e[2]&255)<<16|(e[3]&255)<<24,C=e[4]&255|(e[5]&255)<<8|(e[6]&255)<<16|(e[7]&255)<<24,d=e[8]&255|(e[9]&255)<<8|(e[10]&255)<<16|(e[11]&255)<<24,p=e[12]&255|(e[13]&255)<<8|(e[14]&255)<<16|(e[15]&255)<<24,w=r[8]&255|(r[9]&255)<<8|(r[10]&255)<<16|(r[11]&255)<<24,x=n[16]&255|(n[17]&255)<<8|(n[18]&255)<<16|(n[19]&255)<<24,L=n[20]&255|(n[21]&255)<<8|(n[22]&255)<<16|(n[23]&255)<<24,Y=n[24]&255|(n[25]&255)<<8|(n[26]&255)<<16|(n[27]&255)<<24,B=n[28]&255|(n[29]&255)<<8|(n[30]&255)<<16|(n[31]&255)<<24,K=r[12]&255|(r[13]&255)<<8|(r[14]&255)<<16|(r[15]&255)<<24,_=i,U=A,b=o,S=s,m=f,Q=h,g=c,I=C,l=d,y=p,u=w,E=x,M=L,T=Y,N=B,F=K,a,P=0;P<20;P+=2)a=_+M|0,m^=a<<7|a>>>25,a=m+_|0,l^=a<<9|a>>>23,a=l+m|0,M^=a<<13|a>>>19,a=M+l|0,_^=a<<18|a>>>14,a=Q+U|0,y^=a<<7|a>>>25,a=y+Q|0,T^=a<<9|a>>>23,a=T+y|0,U^=a<<13|a>>>19,a=U+T|0,Q^=a<<18|a>>>14,a=u+g|0,N^=a<<7|a>>>25,a=N+u|0,b^=a<<9|a>>>23,a=b+N|0,g^=a<<13|a>>>19,a=g+b|0,u^=a<<18|a>>>14,a=F+E|0,S^=a<<7|a>>>25,a=S+F|0,I^=a<<9|a>>>23,a=I+S|0,E^=a<<13|a>>>19,a=E+I|0,F^=a<<18|a>>>14,a=_+S|0,U^=a<<7|a>>>25,a=U+_|0,b^=a<<9|a>>>23,a=b+U|0,S^=a<<13|a>>>19,a=S+b|0,_^=a<<18|a>>>14,a=Q+m|0,g^=a<<7|a>>>25,a=g+Q|0,I^=a<<9|a>>>23,a=I+g|0,m^=a<<13|a>>>19,a=m+I|0,Q^=a<<18|a>>>14,a=u+y|0,E^=a<<7|a>>>25,a=E+u|0,l^=a<<9|a>>>23,a=l+E|0,y^=a<<13|a>>>19,a=y+l|0,u^=a<<18|a>>>14,a=F+N|0,M^=a<<7|a>>>25,a=M+F|0,T^=a<<9|a>>>23,a=T+M|0,N^=a<<13|a>>>19,a=N+T|0,F^=a<<18|a>>>14;t[0]=_>>>0&255,t[1]=_>>>8&255,t[2]=_>>>16&255,t[3]=_>>>24&255,t[4]=Q>>>0&255,t[5]=Q>>>8&255,t[6]=Q>>>16&255,t[7]=Q>>>24&255,t[8]=u>>>0&255,t[9]=u>>>8&255,t[10]=u>>>16&255,t[11]=u>>>24&255,t[12]=F>>>0&255,t[13]=F>>>8&255,t[14]=F>>>16&255,t[15]=F>>>24&255,t[16]=g>>>0&255,t[17]=g>>>8&255,t[18]=g>>>16&255,t[19]=g>>>24&255,t[20]=I>>>0&255,t[21]=I>>>8&255,t[22]=I>>>16&255,t[23]=I>>>24&255,t[24]=l>>>0&255,t[25]=l>>>8&255,t[26]=l>>>16&255,t[27]=l>>>24&255,t[28]=y>>>0&255,t[29]=y>>>8&255,t[30]=y>>>16&255,t[31]=y>>>24&255}});var Zr=D(jt=>{var Ro=di();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");jt.crypto_stream_KEYBYTES=32;jt.crypto_stream_NONCEBYTES=24;jt.crypto_stream_PRIMITIVE="xsalsa20";jt.crypto_stream_xsalsa20_MESSAGEBYTES_MAX=Number.MAX_SAFE_INTEGER;jt.crypto_stream=function(t,e,n){t.fill(0),jt.crypto_stream_xor(t,t,e,n)};jt.crypto_stream_xor=function(t,e,n,r){let i=Ro(n,r);i.update(e,t),i.final()};jt.crypto_stream_xor_instance=function(t,e){return new Ci(t,e)};function Ci(t,e){this._instance=Ro(t,e)}Ci.prototype.update=function(t,e){this._instance.update(e,t)};Ci.prototype.final=function(){this._instance.finalize(),this._instance=null}});var tn=D((by,Oo)=>{if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");var $r=function(t){this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.leftover=0,this.fin=0;var e,n,r,i,A,o,s,f;e=t[0]&255|(t[1]&255)<<8,this.r[0]=e&8191,n=t[2]&255|(t[3]&255)<<8,this.r[1]=(e>>>13|n<<3)&8191,r=t[4]&255|(t[5]&255)<<8,this.r[2]=(n>>>10|r<<6)&7939,i=t[6]&255|(t[7]&255)<<8,this.r[3]=(r>>>7|i<<9)&8191,A=t[8]&255|(t[9]&255)<<8,this.r[4]=(i>>>4|A<<12)&255,this.r[5]=A>>>1&8190,o=t[10]&255|(t[11]&255)<<8,this.r[6]=(A>>>14|o<<2)&8191,s=t[12]&255|(t[13]&255)<<8,this.r[7]=(o>>>11|s<<5)&8065,f=t[14]&255|(t[15]&255)<<8,this.r[8]=(s>>>8|f<<8)&8191,this.r[9]=f>>>5&127,this.pad[0]=t[16]&255|(t[17]&255)<<8,this.pad[1]=t[18]&255|(t[19]&255)<<8,this.pad[2]=t[20]&255|(t[21]&255)<<8,this.pad[3]=t[22]&255|(t[23]&255)<<8,this.pad[4]=t[24]&255|(t[25]&255)<<8,this.pad[5]=t[26]&255|(t[27]&255)<<8,this.pad[6]=t[28]&255|(t[29]&255)<<8,this.pad[7]=t[30]&255|(t[31]&255)<<8};$r.prototype.blocks=function(t,e,n){for(var r=this.fin?0:2048,i,A,o,s,f,h,c,C,d,p,w,x,L,Y,B,K,_,U,b,S=this.h[0],m=this.h[1],Q=this.h[2],g=this.h[3],I=this.h[4],l=this.h[5],y=this.h[6],u=this.h[7],E=this.h[8],M=this.h[9],T=this.r[0],N=this.r[1],F=this.r[2],a=this.r[3],P=this.r[4],q=this.r[5],V=this.r[6],k=this.r[7],O=this.r[8],G=this.r[9];n>=16;)i=t[e+0]&255|(t[e+1]&255)<<8,S+=i&8191,A=t[e+2]&255|(t[e+3]&255)<<8,m+=(i>>>13|A<<3)&8191,o=t[e+4]&255|(t[e+5]&255)<<8,Q+=(A>>>10|o<<6)&8191,s=t[e+6]&255|(t[e+7]&255)<<8,g+=(o>>>7|s<<9)&8191,f=t[e+8]&255|(t[e+9]&255)<<8,I+=(s>>>4|f<<12)&8191,l+=f>>>1&8191,h=t[e+10]&255|(t[e+11]&255)<<8,y+=(f>>>14|h<<2)&8191,c=t[e+12]&255|(t[e+13]&255)<<8,u+=(h>>>11|c<<5)&8191,C=t[e+14]&255|(t[e+15]&255)<<8,E+=(c>>>8|C<<8)&8191,M+=C>>>5|r,d=0,p=d,p+=S*T,p+=m*(5*G),p+=Q*(5*O),p+=g*(5*k),p+=I*(5*V),d=p>>>13,p&=8191,p+=l*(5*q),p+=y*(5*P),p+=u*(5*a),p+=E*(5*F),p+=M*(5*N),d+=p>>>13,p&=8191,w=d,w+=S*N,w+=m*T,w+=Q*(5*G),w+=g*(5*O),w+=I*(5*k),d=w>>>13,w&=8191,w+=l*(5*V),w+=y*(5*q),w+=u*(5*P),w+=E*(5*a),w+=M*(5*F),d+=w>>>13,w&=8191,x=d,x+=S*F,x+=m*N,x+=Q*T,x+=g*(5*G),x+=I*(5*O),d=x>>>13,x&=8191,x+=l*(5*k),x+=y*(5*V),x+=u*(5*q),x+=E*(5*P),x+=M*(5*a),d+=x>>>13,x&=8191,L=d,L+=S*a,L+=m*F,L+=Q*N,L+=g*T,L+=I*(5*G),d=L>>>13,L&=8191,L+=l*(5*O),L+=y*(5*k),L+=u*(5*V),L+=E*(5*q),L+=M*(5*P),d+=L>>>13,L&=8191,Y=d,Y+=S*P,Y+=m*a,Y+=Q*F,Y+=g*N,Y+=I*T,d=Y>>>13,Y&=8191,Y+=l*(5*G),Y+=y*(5*O),Y+=u*(5*k),Y+=E*(5*V),Y+=M*(5*q),d+=Y>>>13,Y&=8191,B=d,B+=S*q,B+=m*P,B+=Q*a,B+=g*F,B+=I*N,d=B>>>13,B&=8191,B+=l*T,B+=y*(5*G),B+=u*(5*O),B+=E*(5*k),B+=M*(5*V),d+=B>>>13,B&=8191,K=d,K+=S*V,K+=m*q,K+=Q*P,K+=g*a,K+=I*F,d=K>>>13,K&=8191,K+=l*N,K+=y*T,K+=u*(5*G),K+=E*(5*O),K+=M*(5*k),d+=K>>>13,K&=8191,_=d,_+=S*k,_+=m*V,_+=Q*q,_+=g*P,_+=I*a,d=_>>>13,_&=8191,_+=l*F,_+=y*N,_+=u*T,_+=E*(5*G),_+=M*(5*O),d+=_>>>13,_&=8191,U=d,U+=S*O,U+=m*k,U+=Q*V,U+=g*q,U+=I*P,d=U>>>13,U&=8191,U+=l*a,U+=y*F,U+=u*N,U+=E*T,U+=M*(5*G),d+=U>>>13,U&=8191,b=d,b+=S*G,b+=m*O,b+=Q*k,b+=g*V,b+=I*q,d=b>>>13,b&=8191,b+=l*P,b+=y*a,b+=u*F,b+=E*N,b+=M*T,d+=b>>>13,b&=8191,d=(d<<2)+d|0,d=d+p|0,p=d&8191,d=d>>>13,w+=d,S=p,m=w,Q=x,g=L,I=Y,l=B,y=K,u=_,E=U,M=b,e+=16,n-=16;this.h[0]=S,this.h[1]=m,this.h[2]=Q,this.h[3]=g,this.h[4]=I,this.h[5]=l,this.h[6]=y,this.h[7]=u,this.h[8]=E,this.h[9]=M};$r.prototype.finish=function(t,e){var n=new Uint16Array(10),r,i,A,o;if(this.leftover){for(o=this.leftover,this.buffer[o++]=1;o<16;o++)this.buffer[o]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,o=2;o<10;o++)this.h[o]+=r,r=this.h[o]>>>13,this.h[o]&=8191;for(this.h[0]+=r*5,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,n[0]=this.h[0]+5,r=n[0]>>>13,n[0]&=8191,o=1;o<10;o++)n[o]=this.h[o]+r,r=n[o]>>>13,n[o]&=8191;for(n[9]-=8192,i=(r^1)-1,o=0;o<10;o++)n[o]&=i;for(i=~i,o=0;o<10;o++)this.h[o]=this.h[o]&i|n[o];for(this.h[0]=(this.h[0]|this.h[1]<<13)&65535,this.h[1]=(this.h[1]>>>3|this.h[2]<<10)&65535,this.h[2]=(this.h[2]>>>6|this.h[3]<<7)&65535,this.h[3]=(this.h[3]>>>9|this.h[4]<<4)&65535,this.h[4]=(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14)&65535,this.h[5]=(this.h[6]>>>2|this.h[7]<<11)&65535,this.h[6]=(this.h[7]>>>5|this.h[8]<<8)&65535,this.h[7]=(this.h[8]>>>8|this.h[9]<<5)&65535,A=this.h[0]+this.pad[0],this.h[0]=A&65535,o=1;o<8;o++)A=(this.h[o]+this.pad[o]|0)+(A>>>16)|0,this.h[o]=A&65535;t[e+0]=this.h[0]>>>0&255,t[e+1]=this.h[0]>>>8&255,t[e+2]=this.h[1]>>>0&255,t[e+3]=this.h[1]>>>8&255,t[e+4]=this.h[2]>>>0&255,t[e+5]=this.h[2]>>>8&255,t[e+6]=this.h[3]>>>0&255,t[e+7]=this.h[3]>>>8&255,t[e+8]=this.h[4]>>>0&255,t[e+9]=this.h[4]>>>8&255,t[e+10]=this.h[5]>>>0&255,t[e+11]=this.h[5]>>>8&255,t[e+12]=this.h[6]>>>0&255,t[e+13]=this.h[6]>>>8&255,t[e+14]=this.h[7]>>>0&255,t[e+15]=this.h[7]>>>8&255};$r.prototype.update=function(t,e,n){var r,i;if(this.leftover){for(i=16-this.leftover,i>n&&(i=n),r=0;r<i;r++)this.buffer[this.leftover+r]=t[e+r];if(n-=i,e+=i,this.leftover+=i,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(n>=16&&(i=n-n%16,this.blocks(t,e,i),e+=i,n-=i),n){for(r=0;r<n;r++)this.buffer[this.leftover+r]=t[e+r];this.leftover+=n}};Oo.exports=$r});var Bi=D((wy,qo)=>{var Ne=W(),qc=tn(),{crypto_verify_16:Vc}=pe(),xi=16,pi=32,Jc="poly1305";qo.exports={crypto_onetimeauth:Go,crypto_onetimeauth_verify:jc,crypto_onetimeauth_BYTES:xi,crypto_onetimeauth_KEYBYTES:pi,crypto_onetimeauth_PRIMITIVE:Jc};function Go(t,e,n){Ne(t.byteLength===xi,"mac must be 'crypto_onetimeauth_BYTES' bytes"),Ne(e.byteLength!=null,"msg must be buffer"),Ne(n.byteLength===pi,"key must be 'crypto_onetimeauth_KEYBYTES' bytes");var r=new qc(n);r.update(e,0,e.byteLength),r.finish(t,0)}function jc(t,e,n){Ne(t.byteLength===xi,"mac must be 'crypto_onetimeauth_BYTES' bytes"),Ne(e.byteLength!=null,"msg must be buffer"),Ne(n.byteLength===pi,"key must be 'crypto_onetimeauth_KEYBYTES' bytes");var r=new Uint8Array(16);return Go(r,e,n),Vc(t,0,r,0)}});var Qi=D((_y,Zo)=>{var et=W(),{crypto_stream:Wc,crypto_stream_xor:Vo}=Zr(),{crypto_onetimeauth:Xc,crypto_onetimeauth_verify:zc,crypto_onetimeauth_BYTES:en,crypto_onetimeauth_KEYBYTES:Jo}=Bi(),Qe=32,be=24,ke=32,Yt=16,ar=16;Zo.exports={crypto_secretbox:jo,crypto_secretbox_open:Wo,crypto_secretbox_detached:Zc,crypto_secretbox_open_detached:$c,crypto_secretbox_easy:Xo,crypto_secretbox_open_easy:zo,crypto_secretbox_KEYBYTES:Qe,crypto_secretbox_NONCEBYTES:be,crypto_secretbox_ZEROBYTES:ke,crypto_secretbox_BOXZEROBYTES:Yt,crypto_secretbox_MACBYTES:ar};function jo(t,e,n,r){et(t.byteLength===e.byteLength,"c must be 'm.byteLength' bytes");let i=e.byteLength;et(i>=ke,"mlen must be at least 'crypto_secretbox_ZEROBYTES'"),et(n.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(r.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes"),Vo(t,e,n,r),Xc(t.subarray(Yt,Yt+en),t.subarray(Yt+en,t.byteLength),t.subarray(0,Jo)),t.fill(0,0,Yt)}function Wo(t,e,n,r){et(e.byteLength===t.byteLength,"c must be 'm.byteLength' bytes");let i=t.byteLength;et(i>=ke,"mlen must be at least 'crypto_secretbox_ZEROBYTES'"),et(n.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(r.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes");let A=new Uint8Array(Jo);return Wc(A,n,r),zc(e.subarray(Yt,Yt+en),e.subarray(Yt+en,e.byteLength),A)===!1?!1:(Vo(t,e,n,r),t.fill(0,0,32),!0)}function Zc(t,e,n,r,i){et(t.byteLength===n.byteLength,"o must be 'msg.byteLength' bytes"),et(e.byteLength===ar,"mac must be 'crypto_secretbox_MACBYTES' bytes"),et(r.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(i.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes");let A=new Uint8Array(n.byteLength+e.byteLength);return Xo(A,n,r,i),e.set(A.subarray(0,e.byteLength)),t.set(A.subarray(e.byteLength)),!0}function $c(t,e,n,r,i){et(e.byteLength===t.byteLength,"o must be 'msg.byteLength' bytes"),et(n.byteLength===ar,"mac must be 'crypto_secretbox_MACBYTES' bytes"),et(r.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(i.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes");let A=new Uint8Array(e.byteLength+n.byteLength);return A.set(n),A.set(e,n.byteLength),zo(t,A,r,i)}function Xo(t,e,n,r){et(t.byteLength===e.byteLength+ar,"o must be 'msg.byteLength + crypto_secretbox_MACBYTES' bytes"),et(n.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(r.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes");let i=new Uint8Array(ke+e.byteLength),A=new Uint8Array(i.byteLength);i.set(e,ke),jo(A,i,n,r),t.set(A.subarray(Yt))}function zo(t,e,n,r){et(e.byteLength===t.byteLength+ar,"box must be 'msg.byteLength + crypto_secretbox_MACBYTES' bytes"),et(n.byteLength===be,"n must be 'crypto_secretbox_NONCEBYTES' bytes"),et(r.byteLength===Qe,"k must be 'crypto_secretbox_KEYBYTES' bytes");let i=new Uint8Array(Yt+e.byteLength),A=new Uint8Array(i.byteLength);return i.set(e,Yt),Wo(A,i,n,r)===!1?!1:(t.set(A.subarray(ke)),!0)}});var As=D((Sy,is)=>{var{crypto_hash_sha512:t0}=nr(),{crypto_scalarmult:bi,crypto_scalarmult_base:$o}=ir(),{randombytes:e0}=xe(),{crypto_generichash_batch:ts}=jr(),{crypto_stream_xsalsa20_MESSAGEBYTES_MAX:r0}=Zr(),{crypto_secretbox_open_easy:n0,crypto_secretbox_easy:i0,crypto_secretbox_detached:A0,crypto_secretbox_open_detached:o0}=Qi(),Pe=di(),Wt=W(),Pt=32,Re=32,nn=24,s0=32,a0=16,rn=48,es=32,fr=32,kt=16,f0=16,h0=r0-f0;is.exports={crypto_box_easy:l0,crypto_box_open_easy:C0,crypto_box_keypair:rs,crypto_box_seed_keypair:c0,crypto_box_seal:g0,crypto_box_seal_open:I0,crypto_box_PUBLICKEYBYTES:Pt,crypto_box_SECRETKEYBYTES:Re,crypto_box_NONCEBYTES:nn,crypto_box_ZEROBYTES:s0,crypto_box_BOXZEROBYTES:a0,crypto_box_SEALBYTES:rn,crypto_box_SEEDBYTES:es,crypto_box_BEFORENMBYTES:fr,crypto_box_MACBYTES:kt};function rs(t,e){return Ut(t,Pt),Ut(e,Re),e0(e,32),$o(t,e)}function c0(t,e,n){Wt(t.byteLength===Pt,"pk should be 'crypto_box_PUBLICKEYBYTES' bytes"),Wt(e.byteLength===Re,"sk should be 'crypto_box_SECRETKEYBYTES' bytes"),Wt(e.byteLength===es,"sk should be 'crypto_box_SEEDBYTES' bytes");let r=new Uint8Array(64);return t0(r,n,32),e.set(r.subarray(0,32)),r.fill(0),$o(t,e)}function g0(t,e,n){Ut(t,rn+e.length),Ut(n,Pt);var r=t.subarray(0,Pt),i=new Uint8Array(Re);rs(r,i);var A=new Uint8Array(nn);ts(A,[r,n]);var o=new Uint8Array(Pt);bi(o,i,n);var s=new Uint8Array(fr),f=new Uint8Array(16);Pe.core_hsalsa20(s,f,o,Pe.SIGMA),i0(t.subarray(r.length),e,A,s),wi(i)}function I0(t,e,n,r){Ut(e,rn),Ut(t,e.length-rn),Ut(n,Pt),Ut(r,Re);var i=e.subarray(0,Pt),A=new Uint8Array(nn);ts(A,[i,n]);var o=new Uint8Array(Pt);bi(o,r,i);var s=new Uint8Array(fr),f=new Uint8Array(16);return Pe.core_hsalsa20(s,f,o,Pe.SIGMA),n0(t,e.subarray(i.length),A,s)}function ns(t,e,n){let r=new Uint8Array(16),i=new Uint8Array(32);return Wt(bi(i,n,e)===0),Pe.core_hsalsa20(t,r,i,Pe.SIGMA),!0}function y0(t,e,n,r,i){return A0(t,e,n,r,i)}function u0(t,e,n,r,i,A){Ut(e,kt),Ut(r,nn),Ut(i,Pt),Ut(A,Re);let o=new Uint8Array(fr);Wt(ns(o,i,A));let s=y0(t,e,n,r,o);return wi(o),s}function l0(t,e,n,r,i){return Wt(t.length>=e.length+kt,"c should be at least 'm.length + crypto_box_MACBYTES' bytes"),Wt(e.length<=h0,"m should be at most 'crypto_box_MESSAGEBYTES_MAX' bytes"),u0(t.subarray(kt,e.length+kt),t.subarray(0,kt),e,n,r,i)}function E0(t,e,n,r,i){return o0(t,e,n,r,i)}function d0(t,e,n,r,i,A){let o=new Uint8Array(fr);Wt(ns(o,i,A));let s=E0(t,e,n,r,o);return wi(o),s}function C0(t,e,n,r,i){return Wt(e.length>=t.length+kt,"c should be at least 'm.length + crypto_box_MACBYTES' bytes"),d0(t,e.subarray(kt,t.length+kt),e.subarray(0,kt),n,r,i)}function Ut(t,e){if(!t||e&&t.length<e)throw new Error("Argument must be a buffer"+(e?" of length "+e:""))}function wi(t){for(let e=0;e<t.length;e++)t[e]=0}});var ss=D((my,mi)=>{var on=W(),sn=St();mi.exports=Xt;var x0=mi.exports.SHA256_BYTES=32,_i=64,An=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function p0(t,e,n,r){var i=((t>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+e,A=((n>>>7|n<<25)^(n>>>18|n<<14)^n>>>3)+r;return i+A<<0}function Si(t,e){var n,r,i,A,o,s,[f,h,c,C,d,p,w,x]=t;let L=new Uint32Array(64);for(let B=0;B<16;B++)L[B]=os(e[B]);for(let B=16;B<64;B++)L[B]=p0(L[B-2],L[B-7],L[B-15],L[B-16]);for(let B=0;B<64;B+=4)Y(B);t[0]=t[0]+f,t[1]=t[1]+h,t[2]=t[2]+c,t[3]=t[3]+C,t[4]=t[4]+d,t[5]=t[5]+p,t[6]=t[6]+w,t[7]=t[7]+x;function Y(B){n=d&p^~d&w,r=f&h^f&c^h&c,i=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),A=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7),o=x+n+A+L[B]+An[B],s=i+r,x=C+o,C=o+s,n=x&d^~x&p,r=C&f^C&h^f&h,i=(C>>>2|C<<30)^(C>>>13|C<<19)^(C>>>22|C<<10),A=(x>>>6|x<<26)^(x>>>11|x<<21)^(x>>>25|x<<7),o=w+n+A+L[B+1]+An[B+1],s=i+r,w=c+o,c=o+s,n=w&x^~w&d,r=c&C^c&f^C&f,i=(c>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10),A=(w>>>6|w<<26)^(w>>>11|w<<21)^(w>>>25|w<<7),o=p+n+A+L[B+2]+An[B+2],s=i+r,p=h+o,h=o+s,n=p&w^~p&x,r=h&c^h&C^c&C,i=(h>>>2|h<<30)^(h>>>13|h<<19)^(h>>>22|h<<10),A=(p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7),o=d+n+A+L[B+3]+An[B+3],s=i+r,d=f+o,f=o+s}}function Xt(){return this instanceof Xt?(this.buffer=new ArrayBuffer(64),this.bytesRead=0,this.pos=0,this.digestLength=x0,this.finalised=!1,this.load=new Uint8Array(this.buffer),this.words=new Uint32Array(this.buffer),this.state=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),this):new Xt}Xt.prototype.update=function(t,e){on(this.finalised===!1,"Hash instance finalised");var[n,r]=B0(t,e),i=0;for(this.bytesRead+=r;r>0&&(this.load.set(n.subarray(i,i+_i-this.pos),this.pos),i+=_i-this.pos,r-=_i-this.pos,!(r<0));)this.pos=0,Si(this.state,this.words);return this.pos=this.bytesRead&63,this.load.fill(0,this.pos),this};Xt.prototype.digest=function(t,e=0){on(this.finalised===!1,"Hash instance finalised"),this.finalised=!0,this.load.fill(0,this.pos),this.load[this.pos]=128,this.pos>55&&(Si(this.state,this.words),this.words.fill(0),this.pos=0);let n=new DataView(this.buffer);n.setUint32(56,this.bytesRead/2**29),n.setUint32(60,this.bytesRead<<3),Si(this.state,this.words);let r=new Uint8Array(this.state.map(os).buffer);if(!t)return new Uint8Array(r);if(typeof t=="string")return sn.toString(r,t);on(t instanceof Uint8Array,"input must be Uint8Array or Buffer"),on(t.byteLength>=this.digestLength+e,"input not large enough for digest");for(let i=0;i<this.digestLength;i++)t[i+e]=r[i];return t};function hr(t){if(!(this instanceof hr))return new hr(t);this.pad=sn.alloc(64),this.inner=Xt(),this.outer=Xt();let e=sn.alloc(32);t.byteLength>64&&(Xt().update(t).digest(e),t=e),this.pad.fill(54);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.inner.update(this.pad),this.pad.fill(92);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.outer.update(this.pad),this.pad.fill(0),e.fill(0)}hr.prototype.update=function(t,e){return this.inner.update(t,e),this};hr.prototype.digest=function(t,e=0){return this.outer.update(this.inner.digest()),this.outer.digest(t,e)};Xt.HMAC=hr;function B0(t,e){var n=sn.from(t,e);return[n,n.byteLength]}function os(t){var e=(t&16711935)>>>8|(t&16711935)<<24,n=(t&4278255360)<<8|(t&4278255360)>>>24;return e|n}});var fs=D((Dy,as)=>{var Q0=(t,e)=>function(){return e||(0,t[Object.keys(t)[0]])((e={exports:{}}).exports,e),e.exports},b0=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return n=>{for(var r=n.length,i=new Uint8Array((r-(n[r-1]=="=")-(n[r-2]=="="))*3/4|0),A=0,o=0;A<r;){var s=t[n.charCodeAt(A++)],f=t[n.charCodeAt(A++)],h=t[n.charCodeAt(A++)],c=t[n.charCodeAt(A++)];i[o++]=s<<2|f>>4,i[o++]=f<<4|h>>2,i[o++]=h<<6|c}return i}})(),w0=Q0({"wasm-binary:./sha256.wat"(t,e){e.exports=b0("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")}}),_0=w0(),S0=new WebAssembly.Module(_0);as.exports=t=>new WebAssembly.Instance(S0,t).exports});var hs=D((Uy,Li)=>{var Oe=W(),fn=St(),se=typeof WebAssembly<"u"&&fs()({imports:{debug:{log(...t){console.log(...t.map(e=>(e>>>0).toString(16).padStart(8,"0")))},log_tee(t){return console.log((t>>>0).toString(16).padStart(8,"0")),t}}}}),_t=0,an=[];Li.exports=Et;var m0=Li.exports.SHA256_BYTES=32,Ui=40,Di=108,cr=64;function Et(){if(!(this instanceof Et))return new Et;if(!se)throw new Error("WASM not loaded. Wait for Sha256.ready(cb)");an.length||(an.push(_t),_t+=Di),this.finalized=!1,this.digestLength=m0,this.pointer=an.pop(),this.pos=0,this._memory=new Uint8Array(se.memory.buffer),this._memory.fill(0,this.pointer,this.pointer+Di),this.pointer+this.digestLength>this._memory.length&&this._realloc(this.pointer+Di)}Et.prototype._realloc=function(t){se.memory.grow(Math.max(0,Math.ceil(Math.abs(t-this._memory.length)/65536))),this._memory=new Uint8Array(se.memory.buffer)};Et.prototype.update=function(t,e){Oe(this.finalized===!1,"Hash instance finalized"),_t%4!==0&&(_t+=4-_t%4),Oe(_t%4===0,"input shoud be aligned for int32");let[n,r]=U0(t,e);return Oe(n instanceof Uint8Array,"input must be Uint8Array or Buffer"),_t+r>this._memory.length&&this._realloc(_t+t.length),this._memory.fill(0,_t,_t+L0(r,cr)-cr),this._memory.set(n.subarray(0,cr-this.pos),this.pointer+Ui+this.pos),this._memory.set(n.subarray(cr-this.pos),_t),this.pos=this.pos+r&63,se.sha256(this.pointer,_t,r,0),this};Et.prototype.digest=function(t,e=0){Oe(this.finalized===!1,"Hash instance finalized"),this.finalized=!0,an.push(this.pointer);let n=this.pointer+Ui+this.pos;this._memory.fill(0,n,this.pointer+Ui+cr),se.sha256(this.pointer,_t,0,1);let r=this._memory.subarray(this.pointer,this.pointer+this.digestLength);if(!t)return r;if(typeof t=="string")return fn.toString(r,t);Oe(t instanceof Uint8Array,"output must be Uint8Array or Buffer"),Oe(t.byteLength>=this.digestLength+e,"output must have at least 'SHA256_BYTES' bytes remaining");for(let i=0;i<this.digestLength;i++)t[i+e]=r[i];return t};Et.WASM=se;Et.WASM_SUPPORTED=typeof WebAssembly<"u";Et.ready=function(t){return t||(t=D0),se?(t(),Promise.resolve()):t(new Error("WebAssembly not supported"))};Et.prototype.ready=Et.ready;function gr(t){if(!(this instanceof gr))return new gr(t);this.pad=fn.alloc(64),this.inner=Et(),this.outer=Et();let e=fn.alloc(32);t.byteLength>64&&(Et().update(t).digest(e),t=e),this.pad.fill(54);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.inner.update(this.pad),this.pad.fill(92);for(let n=0;n<t.byteLength;n++)this.pad[n]^=t[n];this.outer.update(this.pad),this.pad.fill(0),e.fill(0)}gr.prototype.update=function(t,e){return this.inner.update(t,e),this};gr.prototype.digest=function(t,e=0){return this.outer.update(this.inner.digest()),this.outer.digest(t,e)};Et.HMAC=gr;function D0(){}function U0(t,e){var n=fn.from(t,e);return[n,n.byteLength]}function L0(t,e){return t+e-1&-e}});var gs=D((vy,ae)=>{var v0=ss(),hn=hs(),cs=v0;ae.exports=function(){return new cs};ae.exports.ready=function(t){hn.ready(function(){t()})};ae.exports.WASM_SUPPORTED=hn.WASM_SUPPORTED;ae.exports.WASM_LOADED=!1;var Ly=ae.exports.SHA256_BYTES=32;hn.ready(function(t){t||(ae.exports.WASM_LOADED=!0,ae.exports=cs=hn)})});var us=D((Yy,ys)=>{var Y0=gs(),M0=W();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");var Is=32;function K0(t,e,n){return M0(t.byteLength===Is,"out must be 'crypto_hash_sha256_BYTES' bytes long"),Y0().update(e.subarray(0,n)).digest(t),0}ys.exports={crypto_hash_sha256:K0,crypto_hash_sha256_BYTES:Is}});var ls=D((My,dt)=>{var cn=W(),T0=xe().randombytes_buf,vi=li();dt.exports.crypto_kdf_PRIMITIVE="blake2b";dt.exports.crypto_kdf_BYTES_MIN=16;dt.exports.crypto_kdf_BYTES_MAX=64;dt.exports.crypto_kdf_CONTEXTBYTES=8;dt.exports.crypto_kdf_KEYBYTES=32;function F0(t,e){var n=1,r=0;for(t[0]=e&255;++r<8&&(n*=256);)t[r]=e/n&255}dt.exports.crypto_kdf_derive_from_key=function(e,n,r,i){cn(e.length>=dt.exports.crypto_kdf_BYTES_MIN,"subkey must be at least crypto_kdf_BYTES_MIN"),cn(n>=0&&n<=9007199254740991,"subkey_id must be safe integer"),cn(r.length>=dt.exports.crypto_kdf_CONTEXTBYTES,"context must be at least crypto_kdf_CONTEXTBYTES");var A=new Uint8Array(vi.PERSONALBYTES),o=new Uint8Array(vi.SALTBYTES);A.set(r,0,dt.exports.crypto_kdf_CONTEXTBYTES),F0(o,n);var s=Math.min(e.length,dt.exports.crypto_kdf_BYTES_MAX);vi(s,i.subarray(0,dt.exports.crypto_kdf_KEYBYTES),o,A,!0).final(e)};dt.exports.crypto_kdf_keygen=function(e){cn(e.length>=dt.exports.crypto_kdf_KEYBYTES,"out.length must be crypto_kdf_KEYBYTES"),T0(e.subarray(0,dt.exports.crypto_kdf_KEYBYTES))}});var xs=D((Ky,Cs)=>{var{crypto_scalarmult_base:Es}=ir(),{crypto_generichash:H0}=jr(),{randombytes_buf:N0}=xe(),Ir=W(),ds=32,Yi=32,gn=32;function k0(t,e){return Ir(t.byteLength===Yi,"pk must be 'crypto_kx_PUBLICKEYBYTES' bytes"),Ir(e.byteLength===gn,"sk must be 'crypto_kx_SECRETKEYBYTES' bytes"),N0(e,gn),Es(t,e)}function P0(t,e,n){return Ir(t.byteLength===Yi,"pk must be 'crypto_kx_PUBLICKEYBYTES' bytes"),Ir(e.byteLength===gn,"sk must be 'crypto_kx_SECRETKEYBYTES' bytes"),Ir(n.byteLength===ds,"seed must be 'crypto_kx_SEEDBYTES' bytes"),H0(e,n),Es(t,e)}Cs.exports={crypto_kx_keypair:k0,crypto_kx_seed_keypair:P0,crypto_kx_SEEDBYTES:ds,crypto_kx_SECRETKEYBYTES:gn,crypto_kx_PUBLICKEYBYTES:Yi}});var Qs=D((Ty,Bs)=>{var yr=W();Bs.exports=Mi;var R0=[1634760805,857760878,2036477234,1797285236];function Mi(t,e,n){yr(e.byteLength===32),yr(t.byteLength===8||t.byteLength===12);let r=new Uint32Array(t.buffer,t.byteOffset,t.byteLength/4),i=new Uint32Array(e.buffer,e.byteOffset,e.byteLength/4);n||(n=0),yr(n<Number.MAX_SAFE_INTEGER),this.finalized=!1,this.pos=0,this.state=new Uint32Array(16);for(let A=0;A<4;A++)this.state[A]=R0[A];for(let A=0;A<8;A++)this.state[4+A]=i[A];return this.state[12]=n&4294967295,r.byteLength===8?(this.state[13]=(n&&0xffffffff00000000)>>32,this.state[14]=r[0],this.state[15]=r[1]):(this.state[13]=r[0],this.state[14]=r[1],this.state[15]=r[2]),this}Mi.prototype.update=function(t,e){yr(!this.finalized,"cipher finalized."),yr(t.byteLength>=e.byteLength,"output cannot be shorter than input.");let n=e.length,r=this.pos%64;this.pos+=n;let i=0,A=ps(this.state);for(;r>0&&n>0;)t[i]=e[i++]^A[r],r=r+1&63,r||this.state[12]++,n--;for(;n>0;){if(A=ps(this.state),n<64){for(let o=0;o<n;o++)t[i]=e[i++]^A[r++],r&=63;return}for(;r<64;)t[i]=e[i++]^A[r++];this.state[12]++,r=0,n-=64}};Mi.prototype.final=function(){this.state.fill(0),this.pos=0,this.finalized=!0};function ps(t){let e=new Uint32Array(16);for(let n=16;n--;)e[n]=t[n];for(let n=0;n<20;n+=2)fe(e,0,4,8,12),fe(e,1,5,9,13),fe(e,2,6,10,14),fe(e,3,7,11,15),fe(e,0,5,10,15),fe(e,1,6,11,12),fe(e,2,7,8,13),fe(e,3,4,9,14);for(let n=0;n<16;n++)e[n]+=t[n];return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}function In(t,e){return t<<e|t>>>32-e}function fe(t,e,n,r,i){t[e]+=t[n],t[i]^=t[e],t[i]=In(t[i],16),t[r]+=t[i],t[n]^=t[r],t[n]=In(t[n],12),t[e]+=t[n],t[i]^=t[e],t[i]=In(t[i],8),t[r]+=t[i],t[n]^=t[r],t[n]=In(t[n],7)}});var yn=D(j=>{var Lt=W(),Ge=Qs();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");j.crypto_stream_chacha20_KEYBYTES=32;j.crypto_stream_chacha20_NONCEBYTES=8;j.crypto_stream_chacha20_MESSAGEBYTES_MAX=Number.MAX_SAFE_INTEGER;j.crypto_stream_chacha20_ietf_KEYBYTES=32;j.crypto_stream_chacha20_ietf_NONCEBYTES=12;j.crypto_stream_chacha20_ietf_MESSAGEBYTES_MAX=2**32;j.crypto_stream_chacha20=function(t,e,n){t.fill(0),j.crypto_stream_chacha20_xor(t,t,e,n)};j.crypto_stream_chacha20_xor=function(t,e,n,r){Lt(n.byteLength===j.crypto_stream_chacha20_NONCEBYTES,"n should be crypto_stream_chacha20_NONCEBYTES"),Lt(r.byteLength===j.crypto_stream_chacha20_KEYBYTES,"k should be crypto_stream_chacha20_KEYBYTES");let i=new Ge(n,r);i.update(t,e),i.final()};j.crypto_stream_chacha20_xor_ic=function(t,e,n,r,i){Lt(n.byteLength===j.crypto_stream_chacha20_NONCEBYTES,"n should be crypto_stream_chacha20_NONCEBYTES"),Lt(i.byteLength===j.crypto_stream_chacha20_KEYBYTES,"k should be crypto_stream_chacha20_KEYBYTES");let A=new Ge(n,i,r);A.update(t,e),A.final()};j.crypto_stream_chacha20_xor_instance=function(t,e){return Lt(t.byteLength===j.crypto_stream_chacha20_NONCEBYTES,"n should be crypto_stream_chacha20_NONCEBYTES"),Lt(e.byteLength===j.crypto_stream_chacha20_KEYBYTES,"k should be crypto_stream_chacha20_KEYBYTES"),new Ge(t,e)};j.crypto_stream_chacha20_ietf=function(t,e,n){t.fill(0),j.crypto_stream_chacha20_ietf_xor(t,t,e,n)};j.crypto_stream_chacha20_ietf_xor=function(t,e,n,r){Lt(n.byteLength===j.crypto_stream_chacha20_ietf_NONCEBYTES,"n should be crypto_stream_chacha20_ietf_NONCEBYTES"),Lt(r.byteLength===j.crypto_stream_chacha20_ietf_KEYBYTES,"k should be crypto_stream_chacha20_ietf_KEYBYTES");let i=new Ge(n,r);i.update(t,e),i.final()};j.crypto_stream_chacha20_ietf_xor_ic=function(t,e,n,r,i){Lt(n.byteLength===j.crypto_stream_chacha20_ietf_NONCEBYTES,"n should be crypto_stream_chacha20_ietf_NONCEBYTES"),Lt(i.byteLength===j.crypto_stream_chacha20_ietf_KEYBYTES,"k should be crypto_stream_chacha20_ietf_KEYBYTES");let A=new Ge(n,i,r);A.update(t,e),A.final()};j.crypto_stream_chacha20_ietf_xor_instance=function(t,e){return Lt(t.byteLength===j.crypto_stream_chacha20_ietf_NONCEBYTES,"n should be crypto_stream_chacha20_ietf_NONCEBYTES"),Lt(e.byteLength===j.crypto_stream_chacha20_ietf_KEYBYTES,"k should be crypto_stream_chacha20_ietf_KEYBYTES"),new Ge(t,e)}});var Us=D((Hy,Ds)=>{var{crypto_stream_chacha20_ietf:bs,crypto_stream_chacha20_ietf_xor_ic:ws}=yn(),{crypto_verify_16:O0}=pe(),_s=tn(),ot=W(),ur=32,G0=0,lr=12,Mt=16,Er=Number.MAX_SAFE_INTEGER,un=new Uint8Array(16);function Ss(t,e,n,r,i,A){if(n===null)return Ss(t,e,new Uint8Array(0),r,i,A);ot(t.byteLength===e.byteLength+Mt,"ciphertext should be 'crypto_aead_chacha20poly1305_ietf_ABYTES' longer than message"),ot(i.byteLength===lr,"npub should be 'crypto_aead_chacha20poly1305_ietf_NPUBBYTES' long"),ot(A.byteLength===ur,"k should be 'crypto_aead_chacha20poly1305_ietf_KEYBYTES' long"),ot(e.byteLength<=Er,"message is too large");let o=Ki(t.subarray(0,e.byteLength),t.subarray(e.byteLength),e,n,r,i,A);return e.byteLength+o}function Ki(t,e,n,r,i,A,o){if(r===null)return Ki(t,e,n,new Uint8Array(0),i,A,o);ot(t.byteLength===n.byteLength,"ciphertext should be same length than message"),ot(A.byteLength===lr,"npub should be 'crypto_aead_chacha20poly1305_ietf_NPUBBYTES' long"),ot(o.byteLength===ur,"k should be 'crypto_aead_chacha20poly1305_ietf_KEYBYTES' long"),ot(n.byteLength<=Er,"message is too large"),ot(e.byteLength<=Mt,"mac should be 'crypto_aead_chacha20poly1305_ietf_ABYTES' long");let s=new Uint8Array(64);var f=new Uint8Array(8);bs(s,A,o);let h=new _s(s);return s.fill(0),h.update(r,0,r.byteLength),h.update(un,0,16-r.byteLength&15),ws(t,n,A,1,o),h.update(t,0,n.byteLength),h.update(un,0,16-n.byteLength&15),ln(f,0,r.byteLength),h.update(f,0,f.byteLength),ln(f,0,n.byteLength),h.update(f,0,f.byteLength),h.finish(e,0),f.fill(0),Mt}function ms(t,e,n,r,i,A){if(r===null)return ms(t,e,n,new Uint8Array(0),i,A);if(ot(t.byteLength===n.byteLength-Mt,"message should be 'crypto_aead_chacha20poly1305_ietf_ABYTES' shorter than ciphertext"),ot(i.byteLength===lr,"npub should be 'crypto_aead_chacha20poly1305_ietf_NPUBBYTES' long"),ot(A.byteLength===ur,"k should be 'crypto_aead_chacha20poly1305_ietf_KEYBYTES' long"),ot(t.byteLength<=Er,"message is too large"),n.byteLength<Mt)throw new Error("could not verify data");return Ti(t,e,n.subarray(0,n.byteLength-Mt),n.subarray(n.byteLength-Mt),r,i,A),n.byteLength-Mt}function Ti(t,e,n,r,i,A,o){if(i===null)return Ti(t,e,n,r,new Uint8Array(0),A,o);ot(n.byteLength===t.byteLength,"message should be same length than ciphertext"),ot(A.byteLength===lr,"npub should be 'crypto_aead_chacha20poly1305_ietf_NPUBBYTES' long"),ot(o.byteLength===ur,"k should be 'crypto_aead_chacha20poly1305_ietf_KEYBYTES' long"),ot(t.byteLength<=Er,"message is too large"),ot(r.byteLength<=Mt,"mac should be 'crypto_aead_chacha20poly1305_ietf_ABYTES' long");let s=new Uint8Array(64),f=new Uint8Array(8),h=new Uint8Array(Mt);bs(s,A,o);let c=new _s(s);s.fill(0),c.update(i,0,i.byteLength),c.update(un,0,16-i.byteLength&15);let C=n.byteLength;c.update(n,0,C),c.update(un,0,16-C&15),ln(f,0,i.byteLength),c.update(f,0,f.byteLength),ln(f,0,C),c.update(f,0,f.byteLength),c.finish(h,0),ot(h.byteLength===16);let d=O0(h,0,r,0);if(h.fill(0),f.fill(0),!d)throw t.fill(0),new Error("could not verify data");ws(t,n,A,1,o)}function ln(t,e,n){t.fill(0,0,8);let r=new DataView(t.buffer,t.byteOffset,t.byteLength);r.setUint32(e,n&4294967295,!0),r.setUint32(e+4,n/2**32&4294967295,!0)}Ds.exports={crypto_aead_chacha20poly1305_ietf_encrypt:Ss,crypto_aead_chacha20poly1305_ietf_encrypt_detached:Ki,crypto_aead_chacha20poly1305_ietf_decrypt:ms,crypto_aead_chacha20poly1305_ietf_decrypt_detached:Ti,crypto_aead_chacha20poly1305_ietf_ABYTES:Mt,crypto_aead_chacha20poly1305_ietf_KEYBYTES:ur,crypto_aead_chacha20poly1305_ietf_NPUBBYTES:lr,crypto_aead_chacha20poly1305_ietf_NSECBYTES:G0,crypto_aead_chacha20poly1305_ietf_MESSAGEBYTES_MAX:Er}});var Ys=D((ky,vs)=>{var{sodium_malloc:Ny}=ti(),dr=W();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");var q0=32,Ls=16,V0=32,J0=16;function En(t,e){return t&=4294967295,e&=4294967295,t<<e|t>>>32-e}function st(t,e){dr(t instanceof Uint8Array,"src not byte array");let n=t[e];return n|=t[e+1]<<8,n|=t[e+2]<<16,n|=t[e+3]<<24,n}function zt(t,e,n){dr(t instanceof Uint8Array,"dest not byte array");var r=1,i=0;for(t[n]=e&255;++i<4&&(r*=256);)t[n+i]=e/r&255}function Zt(t,e,n,r,i){t[e]+=t[n],t[i]=En(t[i]^t[e],16),t[r]+=t[i],t[n]=En(t[n]^t[r],12),t[e]+=t[n],t[i]=En(t[i]^t[e],8),t[r]+=t[i],t[n]=En(t[n]^t[r],7)}function j0(t,e,n,r){dr(t instanceof Uint8Array&&t.length===32,"out is not an array of 32 bytes"),dr(n instanceof Uint8Array&&n.length===32,"k is not an array of 32 bytes"),dr(r===null||r instanceof Uint8Array&&r.length===16,"c is not null or an array of 16 bytes");let i=0,A=new Uint32Array(16);for(r?(A[0]=st(r,0),A[1]=st(r,4),A[2]=st(r,8),A[3]=st(r,12)):(A[0]=1634760805,A[1]=857760878,A[2]=2036477234,A[3]=1797285236),A[4]=st(n,0),A[5]=st(n,4),A[6]=st(n,8),A[7]=st(n,12),A[8]=st(n,16),A[9]=st(n,20),A[10]=st(n,24),A[11]=st(n,28),A[12]=st(e,0),A[13]=st(e,4),A[14]=st(e,8),A[15]=st(e,12),i=0;i<10;i++)Zt(A,0,4,8,12),Zt(A,1,5,9,13),Zt(A,2,6,10,14),Zt(A,3,7,11,15),Zt(A,0,5,10,15),Zt(A,1,6,11,12),Zt(A,2,7,8,13),Zt(A,3,4,9,14);return zt(t,A[0],0),zt(t,A[1],4),zt(t,A[2],8),zt(t,A[3],12),zt(t,A[12],16),zt(t,A[13],20),zt(t,A[14],24),zt(t,A[15],28),0}function W0(){return q0}function X0(){return Ls}function z0(){return V0}function Z0(){return J0}vs.exports={crypto_core_hchacha20_INPUTBYTES:Ls,LOAD32_LE:st,STORE32_LE:zt,QUARTERROUND:Zt,crypto_core_hchacha20:j0,crypto_core_hchacha20_outputbytes:W0,crypto_core_hchacha20_inputbytes:X0,crypto_core_hchacha20_keybytes:z0,crypto_core_hchacha20_constbytes:Z0}});var Vs=D((Py,qs)=>{var Ct=W(),{randombytes_buf:Ms}=xe(),{crypto_stream_chacha20_ietf:Ks,crypto_stream_chacha20_ietf_xor:$0,crypto_stream_chacha20_ietf_xor_ic:dn,crypto_stream_chacha20_ietf_KEYBYTES:Cr}=yn(),{crypto_core_hchacha20:Ts,crypto_core_hchacha20_INPUTBYTES:Fs}=Ys(),Hs=tn(),{sodium_increment:Ns,sodium_is_zero:ks,sodium_memcmp:tg}=ri(),Ps=16,Kt=4,Rt=8,eg=32,qe=eg,rg=24,Cn=rg,ng=16,xn=1+ng,Rs=Number.MAX_SAFE_INTEGER,ig=Number.MAX_SAFE_INTEGER,Ag=1,og=new Uint8Array([0]),Os=new Uint8Array([1]),Qn=new Uint8Array([2]),sg=new Uint8Array([Os|Qn]),we=qe+Rt+Kt+8,xr=0,vt=qe,he=vt+Rt+Kt,pn=new Uint8Array(16);function Bn(t,e){let n=1,r=0;for(t[0]=e&255;++r<8&&(n*=256);)t[r]=e/n&255}function Fi(t){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long");let e=t.subarray(vt,he);for(let n=0;n<Kt;n++)e[n]=0;e[0]=1}function ag(t){Ct(t.length===qe),Ms(t)}function fg(t,e,n){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long"),Ct(e instanceof Uint8Array&&e.length===Cn,"out not byte array of length crypto_secretstream_xchacha20poly1305_HEADERBYTES"),Ct(n instanceof Uint8Array&&n.length===qe,"key not byte array of length crypto_secretstream_xchacha20poly1305_KEYBYTES");let r=t.subarray(xr,vt),i=t.subarray(vt,he),A=t.subarray(he);Ms(e,Cn),Ts(r,e,n,null),Fi(t);for(let o=0;o<Rt;o++)i[o+Kt]=e[o+Fs];A.fill(0)}function hg(t,e,n){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long"),Ct(e instanceof Uint8Array&&e.length===Cn,"_in not byte array of length crypto_secretstream_xchacha20poly1305_HEADERBYTES"),Ct(n instanceof Uint8Array&&n.length===qe,"key not byte array of length crypto_secretstream_xchacha20poly1305_KEYBYTES");let r=t.subarray(xr,vt),i=t.subarray(vt,he),A=t.subarray(he);Ts(r,e,n,null),Fi(t);for(let o=0;o<Rt;o++)i[o+Kt]=e[o+Fs];A.fill(0)}function Hi(t){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long");let e=t.subarray(xr,vt),n=t.subarray(vt,he),r=new Uint8Array(Cr+Rt),i;for(i=0;i<Cr;i++)r[i]=e[i];for(i=0;i<Rt;i++)r[Cr+i]=n[Kt+i];for($0(r,r,n,e),i=0;i<Cr;i++)e[i]=r[i];for(i=0;i<Rt;i++)n[Kt+i]=r[Cr+i];Fi(t)}function cg(t,e,n,r,i){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long"),r||(r=new Uint8Array(0));let A=t.subarray(xr,vt),o=t.subarray(vt,he),s=new Uint8Array(64),f=new Uint8Array(8);Ct(Rs<=ig),Ks(s,o,A);let h=new Hs(s);s.fill(0),h.update(r,0,r.byteLength),h.update(pn,0,16-r.byteLength&15),s[0]=i[0],dn(s,s,o,1,A),h.update(s,0,s.byteLength),e[0]=s[0];let c=e.subarray(1,e.byteLength);dn(c,n,o,2,A),h.update(c,0,n.byteLength),h.update(pn,0,16-s.byteLength+n.byteLength&15),Bn(f,r.byteLength),h.update(f,0,f.byteLength),Bn(f,s.byteLength+n.byteLength),h.update(f,0,f.byteLength);let C=e.subarray(1+n.byteLength,e.byteLength);return h.finish(C,0),Ct(Ps>=Rt),Gs(o.subarray(Kt,o.length),C,Rt),Ns(o),((i[0]&Qn)!==0||ks(o.subarray(0,Kt)))&&Hi(t),xn+n.byteLength}function gg(t,e,n,r,i){Ct(t.byteLength===we,"state is should be crypto_secretstream_xchacha20poly1305_STATEBYTES long"),i||(i=new Uint8Array(0));let A=t.subarray(xr,vt),o=t.subarray(vt,he),s=new Uint8Array(64),f=new Uint8Array(8),h=new Uint8Array(Ps);Ct(r.byteLength>=xn,"ciphertext is too short.");let c=r.byteLength-xn;Ks(s,o,A);let C=new Hs(s);s.fill(0),C.update(i,0,i.byteLength),C.update(pn,0,16-i.byteLength&15),s.fill(0),s[0]=r[0],dn(s,s,o,1,A),n[0]=s[0],s[0]=r[0],C.update(s,0,s.byteLength);let d=r.subarray(1,r.length);C.update(d,0,c),C.update(pn,0,16-s.byteLength+c&15),Bn(f,i.byteLength),C.update(f,0,f.byteLength),Bn(f,s.byteLength+e.byteLength),C.update(f,0,f.byteLength),C.finish(h,0);let p=r.subarray(1+c,r.length);if(!tg(h,p))throw h.fill(0),new Error("MAC could not be verified.");return dn(e,d.subarray(0,e.length),o,2,A),Gs(o.subarray(Kt,o.length),h,Rt),Ns(o),((n&Qn)!==0||ks(o.subarray(0,Kt)))&&Hi(t),c}function Gs(t,e,n){for(let r=0;r<n;r++)t[r]^=e[r]}qs.exports={crypto_secretstream_xchacha20poly1305_keygen:ag,crypto_secretstream_xchacha20poly1305_init_push:fg,crypto_secretstream_xchacha20poly1305_init_pull:hg,crypto_secretstream_xchacha20poly1305_rekey:Hi,crypto_secretstream_xchacha20poly1305_push:cg,crypto_secretstream_xchacha20poly1305_pull:gg,crypto_secretstream_xchacha20poly1305_STATEBYTES:we,crypto_secretstream_xchacha20poly1305_ABYTES:xn,crypto_secretstream_xchacha20poly1305_HEADERBYTES:Cn,crypto_secretstream_xchacha20poly1305_KEYBYTES:qe,crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX:Rs,crypto_secretstream_xchacha20poly1305_TAGBYTES:Ag,crypto_secretstream_xchacha20poly1305_TAG_MESSAGE:og,crypto_secretstream_xchacha20poly1305_TAG_PUSH:Os,crypto_secretstream_xchacha20poly1305_TAG_REKEY:Qn,crypto_secretstream_xchacha20poly1305_TAG_FINAL:sg}});var js=D((Ry,Js)=>{var Ig=(t,e)=>function(){return e||(0,t[Object.keys(t)[0]])((e={exports:{}}).exports,e),e.exports},yg=(()=>{for(var t=new Uint8Array(128),e=0;e<64;e++)t[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return n=>{for(var r=n.length,i=new Uint8Array((r-(n[r-1]=="=")-(n[r-2]=="="))*3/4|0),A=0,o=0;A<r;){var s=t[n.charCodeAt(A++)],f=t[n.charCodeAt(A++)],h=t[n.charCodeAt(A++)],c=t[n.charCodeAt(A++)];i[o++]=s<<2|f>>4,i[o++]=f<<4|h>>2,i[o++]=h<<6|c}return i}})(),ug=Ig({"wasm-binary:./siphash24.wat"(t,e){e.exports=yg("AGFzbQEAAAABBgFgAn9/AAMCAQAFBQEBCpBOBxQCBm1lbW9yeQIAB3NpcGhhc2gAAArdCAHaCAIIfgJ/QvXKzYPXrNu38wAhAkLt3pHzlszct+QAIQNC4eSV89bs2bzsACEEQvPK0cunjNmy9AAhBUEIKQMAIQdBECkDACEIIAGtQjiGIQYgAUEHcSELIAAgAWogC2shCiAFIAiFIQUgBCAHhSEEIAMgCIUhAyACIAeFIQICQANAIAAgCkYNASAAKQMAIQkgBSAJhSEFIAIgA3whAiADQg2JIQMgAyAChSEDIAJCIIkhAiAEIAV8IQQgBUIQiSEFIAUgBIUhBSACIAV8IQIgBUIViSEFIAUgAoUhBSAEIAN8IQQgA0IRiSEDIAMgBIUhAyAEQiCJIQQgAiADfCECIANCDYkhAyADIAKFIQMgAkIgiSECIAQgBXwhBCAFQhCJIQUgBSAEhSEFIAIgBXwhAiAFQhWJIQUgBSAChSEFIAQgA3whBCADQhGJIQMgAyAEhSEDIARCIIkhBCACIAmFIQIgAEEIaiEADAALCwJAAkACQAJAAkACQAJAAkAgCw4HBwYFBAMCAQALIAYgADEABkIwhoQhBgsgBiAAMQAFQiiGhCEGCyAGIAAxAARCIIaEIQYLIAYgADEAA0IYhoQhBgsgBiAAMQACQhCGhCEGCyAGIAAxAAFCCIaEIQYLIAYgADEAAIQhBgsgBSAGhSEFIAIgA3whAiADQg2JIQMgAyAChSEDIAJCIIkhAiAEIAV8IQQgBUIQiSEFIAUgBIUhBSACIAV8IQIgBUIViSEFIAUgAoUhBSAEIAN8IQQgA0IRiSEDIAMgBIUhAyAEQiCJIQQgAiADfCECIANCDYkhAyADIAKFIQMgAkIgiSECIAQgBXwhBCAFQhCJIQUgBSAEhSEFIAIgBXwhAiAFQhWJIQUgBSAChSEFIAQgA3whBCADQhGJIQMgAyAEhSEDIARCIIkhBCACIAaFIQIgBEL/AYUhBCACIAN8IQIgA0INiSEDIAMgAoUhAyACQiCJIQIgBCAFfCEEIAVCEIkhBSAFIASFIQUgAiAFfCECIAVCFYkhBSAFIAKFIQUgBCADfCEEIANCEYkhAyADIASFIQMgBEIgiSEEIAIgA3whAiADQg2JIQMgAyAChSEDIAJCIIkhAiAEIAV8IQQgBUIQiSEFIAUgBIUhBSACIAV8IQIgBUIViSEFIAUgAoUhBSAEIAN8IQQgA0IRiSEDIAMgBIUhAyAEQiCJIQQgAiADfCECIANCDYkhAyADIAKFIQMgAkIgiSECIAQgBXwhBCAFQhCJIQUgBSAEhSEFIAIgBXwhAiAFQhWJIQUgBSAChSEFIAQgA3whBCADQhGJIQMgAyAEhSEDIARCIIkhBCACIAN8IQIgA0INiSEDIAMgAoUhAyACQiCJIQIgBCAFfCEEIAVCEIkhBSAFIASFIQUgAiAFfCECIAVCFYkhBSAFIAKFIQUgBCADfCEEIANCEYkhAyADIASFIQMgBEIgiSEEQQAgAiADIAQgBYWFhTcDAAs=")}}),lg=ug(),Eg=new WebAssembly.Module(lg);Js.exports=t=>new WebAssembly.Instance(Eg,t).exports});var zs=D((Oy,Xs)=>{Xs.exports=dg;function bn(t,e){var n=t.l+e.l,r={h:t.h+e.h+(n/2>>>31)>>>0,l:n>>>0};t.h=r.h,t.l=r.l}function It(t,e){t.h^=e.h,t.h>>>=0,t.l^=e.l,t.l>>>=0}function wn(t,e){var n={h:t.h<<e|t.l>>>32-e,l:t.l<<e|t.h>>>32-e};t.h=n.h,t.l=n.l}function Ws(t){var e=t.l;t.l=t.h,t.h=e}function ce(t,e,n,r){bn(t,e),bn(n,r),wn(e,13),wn(r,16),It(e,t),It(r,n),Ws(t),bn(n,e),bn(t,r),wn(e,17),wn(r,21),It(e,n),It(r,t),Ws(n)}function Ve(t,e){return t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e]}function dg(t,e,n){var r={h:Ve(n,4),l:Ve(n,0)},i={h:Ve(n,12),l:Ve(n,8)},A={h:r.h,l:r.l},o=r,s={h:i.h,l:i.l},f=i,h,c=0,C=e.length,d=C-7,p=new Uint8Array(new ArrayBuffer(8));for(It(A,{h:1936682341,l:1886610805}),It(s,{h:1685025377,l:1852075885}),It(o,{h:1819895653,l:1852142177}),It(f,{h:1952801890,l:2037671283});c<d;)h={h:Ve(e,c+4),l:Ve(e,c)},It(f,h),ce(A,s,o,f),ce(A,s,o,f),It(A,h),c+=8;p[7]=C;for(var w=0;c<C;)p[w++]=e[c++];for(;w<7;)p[w++]=0;h={h:p[7]<<24|p[6]<<16|p[5]<<8|p[4],l:p[3]<<24|p[2]<<16|p[1]<<8|p[0]},It(f,h),ce(A,s,o,f),ce(A,s,o,f),It(A,h),It(o,{h:0,l:255}),ce(A,s,o,f),ce(A,s,o,f),ce(A,s,o,f),ce(A,s,o,f);var x=A;It(x,s),It(x,o),It(x,f),t[0]=x.l&255,t[1]=x.l>>8&255,t[2]=x.l>>16&255,t[3]=x.l>>24&255,t[4]=x.h&255,t[5]=x.h>>8&255,t[6]=x.h>>16&255,t[7]=x.h>>24&255}});var ra=D((Gy,ea)=>{var Zs=W(),ge=typeof WebAssembly<"u"&&js()(),Cg=zs();ea.exports=pr;var $s=pr.BYTES=8,ta=pr.KEYBYTES=16;pr.WASM_SUPPORTED=!!ge;pr.WASM_LOADED=!!ge;var Je=new Uint8Array(ge?ge.memory.buffer:0);function pr(t,e,n,r){return n||(n=new Uint8Array(8)),r!==!0&&(Zs(n.length>=$s,"output must be at least "+$s),Zs(e.length>=ta,"key must be at least "+ta)),ge?(t.length+24>Je.length&&xg(t.length+24),Je.set(e,8),Je.set(t,24),ge.siphash(24,t.length),n.set(Je.subarray(0,8))):Cg(n,t,e),n}function xg(t){ge.memory.grow(Math.max(0,Math.ceil(Math.abs(t-Je.length)/65536))),Je=new Uint8Array(ge.memory.buffer)}});var na=D(_e=>{var Br=ra();if(new Uint16Array([1])[0]!==1)throw new Error("Big endian architecture is not supported.");_e.crypto_shorthash_PRIMITIVE="siphash24";_e.crypto_shorthash_BYTES=Br.BYTES;_e.crypto_shorthash_KEYBYTES=Br.KEYBYTES;_e.crypto_shorthash_WASM_SUPPORTED=Br.WASM_SUPPORTED;_e.crypto_shorthash_WASM_LOADED=Br.WASM_LOADED;_e.crypto_shorthash=pg;function pg(t,e,n,r){Br(e,n,t,r)}});var xa=D((Vy,Ca)=>{var{crypto_verify_32:ha}=pe(),{crypto_hash:We}=nr(),{gf:v,gf0:ia,gf1:Sn,D:Bg,D2:Qg,X:Aa,Y:oa,I:bg,A:Se,Z:me,M:z,S:je,sel25519:wg,pack25519:Xe,inv25519:ca,unpack25519:_g}=Ii(),{randombytes:Sg}=xe(),{crypto_scalarmult_BYTES:sa}=ir(),{crypto_hash_sha512_BYTES:mg}=nr(),Ni=W(),mn=32,Ri=64,Oi=32,ga=64,Ot=ga,Dn=mn,Gi=Ri,Ia=Oi;Ca.exports={crypto_sign_keypair:ya,crypto_sign_seed_keypair:Ug,crypto_sign:la,crypto_sign_detached:Lg,crypto_sign_open:Ea,crypto_sign_verify_detached:vg,crypto_sign_BYTES:Ot,crypto_sign_PUBLICKEYBYTES:Dn,crypto_sign_SECRETKEYBYTES:Gi,crypto_sign_SEEDBYTES:Ia,crypto_sign_ed25519_PUBLICKEYBYTES:mn,crypto_sign_ed25519_SECRETKEYBYTES:Ri,crypto_sign_ed25519_SEEDBYTES:Oi,crypto_sign_ed25519_BYTES:ga,crypto_sign_ed25519_pk_to_curve25519:Kg,crypto_sign_ed25519_sk_to_curve25519:Hg,crypto_sign_ed25519_sk_to_pk:Fg,unpackneg:Ji,pack:Un};function Ie(t,e){for(let n=0;n<16;n++)t[n]=e[n]|0}function Dg(t,e){var n=v(),r;for(r=0;r<16;r++)n[r]=e[r];for(r=250;r>=0;r--)je(n,n),r!==1&&z(n,n,e);for(r=0;r<16;r++)t[r]=n[r]}function ki(t,e){var n=v(),r=v(),i=v(),A=v(),o=v(),s=v(),f=v(),h=v(),c=v();me(n,t[1],t[0]),me(c,e[1],e[0]),z(n,n,c),Se(r,t[0],t[1]),Se(c,e[0],e[1]),z(r,r,c),z(i,t[3],e[3]),z(i,i,Qg),z(A,t[2],e[2]),Se(A,A,A),me(o,r,n),me(s,A,i),Se(f,A,i),Se(h,r,n),z(t[0],o,s),z(t[1],h,f),z(t[2],f,s),z(t[3],o,h)}function aa(t,e,n){var r;for(r=0;r<4;r++)wg(t[r],e[r],n)}function Un(t,e){var n=v(),r=v(),i=v();ca(i,e[2]),z(n,e[0],i),z(r,e[1],i),Xe(t,r),t[31]^=da(n)<<7}function qi(t,e,n){var r=[v(e[0]),v(e[1]),v(e[2]),v(e[3])],i,A;for(Ie(t[0],ia),Ie(t[1],Sn),Ie(t[2],Sn),Ie(t[3],ia),A=255;A>=0;--A)i=n[A/8|0]>>(A&7)&1,aa(t,r,i),ki(r,t),ki(t,t),aa(t,r,i)}function Vi(t,e){var n=[v(),v(),v(),v()];Ie(n[0],Aa),Ie(n[1],oa),Ie(n[2],Sn),z(n[3],Aa,oa),qi(t,n,e)}function ya(t,e,n){xt(t,Dn),xt(e,Gi);var r=new Uint8Array(64),i=[v(),v(),v(),v()],A;for(n||Sg(e,32),We(r,e,32),r[0]&=248,r[31]&=127,r[31]|=64,Vi(i,r),Un(t,i),A=0;A<32;A++)e[A+32]=t[A]}function Ug(t,e,n){return xt(n,Ia),e.set(n),ya(t,e,!0)}var _n=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function ua(t,e){var n,r,i,A;for(r=63;r>=32;--r){for(n=0,i=r-32,A=r-12;i<A;++i)e[i]+=n-16*e[r]*_n[i-(r-32)],n=e[i]+128>>8,e[i]-=n*256;e[i]+=n,e[r]=0}for(n=0,i=0;i<32;i++)e[i]+=n-(e[31]>>4)*_n[i],n=e[i]>>8,e[i]&=255;for(i=0;i<32;i++)e[i]-=n*_n[i];for(r=0;r<32;r++)e[r+1]+=e[r]>>8,t[r]=e[r]&255}function Pi(t){var e=new Float64Array(64);for(let n=0;n<64;n++)e[n]=t[n];for(let n=0;n<64;n++)t[n]=0;ua(t,e)}function la(t,e,n){xt(t,Ot+e.length),xt(e,0),xt(n,Gi);var r=e.length,i=new Uint8Array(64),A=new Uint8Array(64),o=new Uint8Array(64),s,f,h=new Float64Array(64),c=[v(),v(),v(),v()];We(i,n,32),i[0]&=248,i[31]&=127,i[31]|=64;var C=r+64;for(s=0;s<r;s++)t[64+s]=e[s];for(s=0;s<32;s++)t[32+s]=i[32+s];for(We(o,t.subarray(32),r+32),Pi(o),Vi(c,o),Un(t,c),s=32;s<64;s++)t[s]=n[s];for(We(A,t,r+64),Pi(A),s=0;s<64;s++)h[s]=0;for(s=0;s<32;s++)h[s]=o[s];for(s=0;s<32;s++)for(f=0;f<32;f++)h[s+f]+=A[s]*i[f];return ua(t.subarray(32),h),C}function Lg(t,e,n){var r=new Uint8Array(e.length+Ot);la(r,e,n);for(let i=0;i<Ot;i++)t[i]=r[i]}function Ji(t,e){var n=v(),r=v(),i=v(),A=v(),o=v(),s=v(),f=v();return Ie(t[2],Sn),_g(t[1],e),je(i,t[1]),z(A,i,Bg),me(i,i,t[2]),Se(A,t[2],A),je(o,A),je(s,o),z(f,s,o),z(n,f,i),z(n,n,A),Dg(n,n),z(n,n,i),z(n,n,A),z(n,n,A),z(t[0],n,A),je(r,t[0]),z(r,r,A),fa(r,i)||z(t[0],t[0],bg),je(r,t[0]),z(r,r,A),fa(r,i)?(da(t[0])===e[31]>>7&&me(t[0],v(),t[0]),z(t[3],t[0],t[1]),!0):!1}function Ea(t,e,n){xt(t,e.length-Ot),xt(e,Ot),xt(n,Dn);var r=e.length,i=new Uint8Array(e.length),A,o,s=new Uint8Array(32),f=new Uint8Array(64),h=[v(),v(),v(),v()],c=[v(),v(),v(),v()];if(o=-1,r<64||!Ji(c,n))return!1;for(A=0;A<r;A++)i[A]=e[A];for(A=0;A<32;A++)i[A+32]=n[A];if(We(f,i,r),Pi(f),qi(h,c,f),Vi(c,e.subarray(32)),ki(h,c),Un(s,h),r-=64,!ha(e,0,s,0)){for(A=0;A<r;A++)i[A]=0;return!1}for(A=0;A<r;A++)t[A]=e[A+64];return o=r,!0}function vg(t,e,n){xt(t,Ot);var r=new Uint8Array(e.length+Ot),i=0;for(i=0;i<Ot;i++)r[i]=t[i];for(i=0;i<e.length;i++)r[i+Ot]=e[i];return Ea(e,r,n)}function da(t){var e=new Uint8Array(32);return Xe(e,t),e[0]&1}function fa(t,e){var n=new Uint8Array(32),r=new Uint8Array(32);return Xe(n,t),Xe(r,e),ha(n,0,r,0)}function Yg(t,e){qi(t,e,_n)}function Mg(t){var e=[v(),v(),v(),v()];Yg(e,t);var n=0;for(let r=0;r<16;r++)n|=e[0][r]&65535;return n===0}function Kg(t,e){xt(t,Dn),xt(e,mn);var n=[v(),v(),v(),v()],r=v([1]),i=v([1]);Ni(Tg(e)&&Ji(n,e)&&Mg(n),"Cannot convert key: bad point");for(let A=0;A<n.length;A++)Xe(t,n[A]);return me(i,i,n[1]),Se(r,r,n[1]),ca(i,i),z(r,r,i),Xe(t,r),0}function Tg(t){Uint8Array.from([]);var e=[Uint8Array.from([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Uint8Array.from([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Uint8Array.from([38,232,149,143,194,178,39,176,69,195,244,137,242,239,152,240,213,223,172,5,211,198,51,57,177,56,2,136,109,83,252,5]),Uint8Array.from([199,23,106,112,61,77,216,79,186,60,11,118,13,16,103,15,42,32,83,250,44,57,204,198,78,199,253,119,146,172,3,122]),Uint8Array.from([236,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127]),Uint8Array.from([237,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127]),Uint8Array.from([238,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,127])],n=new Uint8Array(7),r;xt(e,7);for(let A=0;A<e.length;A++)for(r=0;r<31;r++)n[A]|=t[r]^e[A][r];for(let A=0;A<e.length;A++)n[A]|=t[r]&127^e[A][r];var i=0;for(let A=0;A<e.length;A++)i|=n[A]-1;return(i>>8&1)===0}function Fg(t,e){return xt(t,mn),t.set(e.subarray(Oi)),t}function Hg(t,e){Ni(t&&t.byteLength===sa,"curveSk must be 'crypto_sign_SECRETKEYBYTES' long"),Ni(e&&e.byteLength===Ri,"edSk must be 'crypto_sign_ed25519_SECRETKEYBYTES' long");var n=new Uint8Array(mg);return We(n,e,32),n[0]&=248,n[31]&=127,n[31]|=64,t.set(n.subarray(0,sa)),n.fill(0),t}function xt(t,e,n="Argument"){if(!t||e&&t.length<e)throw new Error(n+" must be a buffer"+(e?" of length "+e:""))}});var Ba=D((Jy,pa)=>{"use strict";nt(xe());nt(ti());nt(ri());nt(pe());nt(Ao());nt(As());nt(jr());nt(nr());nt(us());nt(ls());nt(xs());nt(Us());nt(Bi());nt(ir());nt(Qi());nt(Vs());nt(na());nt(xa());nt(Zr());nt(yn());function nt(t){Object.keys(t).forEach(function(e){pa.exports[e]=t[e]})}});var Qr=D((jy,Qa)=>{Qa.exports=Ba()});var ji=D((Xy,ba)=>{var De=Qr(),pt=St();ba.exports=class{constructor(e){this.key=e||null,this.nonce=0,this.CIPHER_ALG="ChaChaPoly"}initialiseKey(e){this.key=e,this.nonce=0}setNonce(e){this.nonce=e}encrypt(e,n){if(!this.hasKey)return e;n||(n=pt.alloc(0));let r=Ng(this.key,this.nonce,n,e);if(r.length>65535)throw new Error(`ciphertext length of ${r.length} exceeds maximum Noise message length of 65535`);return this.nonce++,r}decrypt(e,n){if(!this.hasKey)return e;if(n||(n=pt.alloc(0)),e.length>65535)throw new Error(`ciphertext length of ${e.length} exceeds maximum Noise message length of 65535`);let r=kg(this.key,this.nonce,n,e);return this.nonce++,r}get hasKey(){return this.key!==null}_clear(){De.sodium_memzero(this.key),this.key=null,this.nonce=null}static get MACBYTES(){return 16}static get NONCEBYTES(){return 8}static get KEYBYTES(){return 32}};function Ng(t,e,n,r){pt.isBuffer(n)||(n=pt.from(n,"hex")),pt.isBuffer(r)||(r=pt.from(r,"hex"));let i=pt.alloc(De.crypto_aead_chacha20poly1305_ietf_NPUBBYTES);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(4,e,!0);let o=pt.alloc(r.byteLength+De.crypto_aead_chacha20poly1305_ietf_ABYTES);return De.crypto_aead_chacha20poly1305_ietf_encrypt(o,r,n,null,i,t),o}function kg(t,e,n,r){pt.isBuffer(n)||(n=pt.from(n,"hex")),pt.isBuffer(r)||(r=pt.from(r,"hex"));let i=pt.alloc(De.crypto_aead_chacha20poly1305_ietf_NPUBBYTES);new DataView(i.buffer,i.byteOffset,i.byteLength).setUint32(4,e,!0);let o=pt.alloc(r.byteLength-De.crypto_aead_chacha20poly1305_ietf_ABYTES);return De.crypto_aead_chacha20poly1305_ietf_decrypt(o,null,r,n,i,t),o}});var Xi=D((zy,Sa)=>{var{crypto_kx_SEEDBYTES:Pg,crypto_kx_keypair:Rg,crypto_kx_seed_keypair:Og,crypto_scalarmult_BYTES:wa,crypto_scalarmult_SCALARBYTES:Gg,crypto_scalarmult:qg,crypto_scalarmult_base:Vg}=Qr(),Wi=W(),br=St(),_a=wa,Ln=wa,wr=Gg,Jg=Pg,jg="25519";Sa.exports={DHLEN:_a,PKLEN:Ln,SKLEN:wr,SEEDLEN:Jg,ALG:jg,generateKeyPair:Wg,generateSeedKeyPair:Xg,dh:zg};function Wg(t){let e={};return e.secretKey=t||br.alloc(wr),e.publicKey=br.alloc(Ln),t?Vg(e.publicKey,e.secretKey):Rg(e.publicKey,e.secretKey),e}function Xg(t){Wi(t.byteLength===wr);let e={};return e.secretKey=br.alloc(wr),e.publicKey=br.alloc(Ln),Og(e.publicKey,e.secretKey,t),e}function zg(t,{secretKey:e}){Wi(e.byteLength===wr),Wi(t.byteLength===Ln);let n=br.alloc(_a);return qg(n,e,t),n}});var Da=D((Zy,vn)=>{var Zg=St(),{sodium_memzero:_r,crypto_generichash:$g,crypto_generichash_batch:ma}=Qr(),$i=64,$t=128,tA=Zg.alloc($t*3),ye=tA.subarray($t*0,$t*1),zi=tA.subarray($t*1,$t*2),Zi=tA.subarray($t*2,$t*3);vn.exports=function(e,n,r){r.byteLength>$t?($g(ye.subarray(0,$i),r),_r(ye.subarray($i))):(ye.set(r),_r(ye.subarray(r.byteLength)));for(let i=0;i<ye.byteLength;i++)zi[i]=92^ye[i],Zi[i]=54^ye[i];_r(ye),ma(e,[Zi].concat(n)),_r(Zi),ma(e,[zi,e]),_r(zi)};vn.exports.BYTES=$i;vn.exports.KEYBYTES=$t});var eA=D(($y,La)=>{var tI=Da(),Yn=St(),ze=64;La.exports={hkdf:eI,HASHLEN:ze};function eI(t,e,n="",r=2*ze){let i=rI(t,e);return nI(i,n,r)}function rI(t,e){let n=Yn.alloc(ze);return Ua(n,t,e)}function nI(t,e,n){let r=Yn.allocUnsafeSlow(n),i=Yn.from(e),A=i,o=[];for(let s=0;s<n;s+=ze){let f=Yn.from([s/ze+1]),h=r.subarray(s,s+ze);o.push(h),A=Ua(h,t,[A,i,f])}return o}function Ua(t,e,n){return tI(t,n,e),t}});var Ma=D((eu,Ya)=>{var nA=Qr(),iI=W(),Kn=St(),va=ji(),AI=Xi(),{HASHLEN:Sr,hkdf:Mn}=eA();Ya.exports=class extends va{constructor(e={}){super(),this.curve=e.curve||AI,this.digest=Kn.alloc(Sr),this.chainingKey=null,this.offset=0,this.DH_ALG=this.curve.ALG}mixHash(e){rA(this.digest,e)}mixKeyAndHash(e){let[n,r,i]=Mn(this.chainingKey,e,"",3*Sr);this.chainingKey=n,this.mixHash(r),this.initialiseKey(i.subarray(0,32))}mixKeyNormal(e){let[n,r]=Mn(this.chainingKey,e);this.chainingKey=n,this.initialiseKey(r.subarray(0,32))}mixKey(e,n){let r=this.curve.dh(e,n),i=Mn(this.chainingKey,r);this.chainingKey=i[0],this.initialiseKey(i[1].subarray(0,32))}encryptAndHash(e){let n=this.encrypt(e,this.digest);return rA(this.digest,n),n}decryptAndHash(e){let n=this.decrypt(e,this.digest);return rA(this.digest,e),n}getHandshakeHash(e){return e?(iI(e.byteLength===Sr,`output must be ${Sr} bytes`),e.set(this.digest),e):this.getHandshakeHash(Kn.alloc(Sr))}split(){return Mn(this.chainingKey,Kn.alloc(0)).map(n=>n.subarray(0,32))}_clear(){super._clear(),nA.sodium_memzero(this.digest),nA.sodium_memzero(this.chainingKey),this.digest=null,this.chainingKey=null,this.offset=null,this.curve=null}static get alg(){return va.alg+"_BLAKE2b"}};function rA(t,e){let n=Kn.concat([t,e]);nA.crypto_generichash(t,n)}});var Na=D((nu,Ha)=>{var Ka=W(),Tn=St(),oI=Ma(),{HASHLEN:sI}=eA(),Ta=Symbol("initiator static key preshared"),Fn=Symbol("responder static key preshared"),mr=Symbol("psk"),ue=Symbol("s"),Bt=Symbol("e"),Ue=Symbol("es"),Le=Symbol("se"),te=Symbol("ee"),Hn=Symbol("ss"),aI=Object.freeze({NN:[[Bt],[Bt,te]],NNpsk0:[[mr,Bt],[Bt,te]],XX:[[Bt],[Bt,te,ue,Ue],[ue,Le]],XXpsk0:[[mr,Bt],[Bt,te,ue,Ue],[ue,Le]],IK:[Fn,[Bt,Ue,ue,Hn],[Bt,te,Le]],XK:[Fn,[Bt,Ue],[Bt,te],[ue,Le]]}),iA=class{constructor(){this.size=0,this.buffers=[]}push(e){this.size+=e.byteLength,this.buffers.push(e)}end(){let e=Tn.alloc(this.size),n=0;for(let r of this.buffers)e.set(r,n),n+=r.byteLength;return e}},AA=class{constructor(e){this.offset=0,this.buffer=e}shift(e){let n=this.offset,r=this.offset+=e;if(r>this.buffer.byteLength)throw new Error("Insufficient bytes");return this.buffer.subarray(n,r)}end(){return this.shift(this.buffer.byteLength-this.offset)}};Ha.exports=class extends oI{constructor(e,n,r,i={}){super(i),this.s=r||this.curve.generateKeyPair(),this.e=null,this.psk=null,i&&i.psk&&(this.psk=i.psk),this.re=null,this.rs=null,this.pattern=e,this.handshake=aI[this.pattern].slice(),this.isPskHandshake=!!this.psk&&fI(this.handshake),this.protocol=Tn.from(["Noise",this.pattern,this.DH_ALG,this.CIPHER_ALG,"BLAKE2b"].join("_")),this.initiator=n,this.complete=!1,this.rx=null,this.tx=null,this.hash=null}initialise(e,n){for(this.protocol.byteLength<=sI?this.digest.set(this.protocol):this.mixHash(this.protocol),this.chainingKey=Tn.from(this.digest),this.mixHash(e);!Array.isArray(this.handshake[0]);){let r=this.handshake.shift();Ka(r===Fn||r===Ta,"Unexpected pattern");let i=this.initiator?r===Fn:r===Ta;i&&(this.rs=n);let A=i?this.rs:this.s.publicKey;Ka(A!=null,"Remote pubkey required"),this.mixHash(A)}}final(){let[e,n]=this.split();this.tx=this.initiator?e:n,this.rx=this.initiator?n:e,this.complete=!0,this.hash=this.getHandshakeHash(),this._clear()}recv(e){let n=new AA(e);for(let i of this.handshake.shift())switch(i){case mr:this.mixKeyAndHash(this.psk);break;case Bt:this.re=n.shift(this.curve.PKLEN),this.mixHash(this.re),this.isPskHandshake&&this.mixKeyNormal(this.re);break;case ue:{let A=this.hasKey?this.curve.PKLEN+16:this.curve.PKLEN;this.rs=this.decryptAndHash(n.shift(A));break}case te:case Ue:case Le:case Hn:{let A=Fa(i,this.initiator),o=A.local?this.s:this.e,s=A.remote?this.rs:this.re;this.mixKey(s,o);break}default:throw new Error("Unexpected message")}let r=this.decryptAndHash(n.end());return this.handshake.length||this.final(),r}send(e=Tn.alloc(0)){let n=new iA;for(let i of this.handshake.shift())switch(i){case mr:this.mixKeyAndHash(this.psk);break;case Bt:this.e===null&&(this.e=this.curve.generateKeyPair()),this.mixHash(this.e.publicKey),this.isPskHandshake&&this.mixKeyNormal(this.e.publicKey),n.push(this.e.publicKey);break;case ue:n.push(this.encryptAndHash(this.s.publicKey));break;case Ue:case Le:case te:case Hn:{let A=Fa(i,this.initiator),o=A.local?this.s:this.e,s=A.remote?this.rs:this.re;this.mixKey(s,o);break}default:throw new Error("Unexpected message")}n.push(this.encryptAndHash(e));let r=n.end();return this.handshake.length||this.final(),r}_clear(){super._clear(),this.e.secretKey.fill(0),this.e.publicKey.fill(0),this.re.fill(0),this.e=null,this.re=null}};function Fa(t,e){let n={local:!1,remote:!1};switch(t){case te:return n;case Ue:return n.local^=!e,n.remote^=e,n;case Le:return n.local^=e,n.remote^=!e,n;case Hn:return n.local^=1,n.remote^=1,n}}function fI(t){return t.some(e=>Array.isArray(e)&&e.indexOf(mr)!==-1)}});var pf=new TextEncoder,Bf=new TextDecoder("utf-8",{fatal:!0}),Qf=/^[A-Za-z0-9_-]*$/,ne=t=>pf.encode(t),EA=t=>Bf.decode(t);function Lr(t){let e="";for(let n of t)e+=String.fromCharCode(n);return btoa(e).replaceAll("+","-").replaceAll("/","_").replace(/=+$/,"")}function Ze(t){if(!Qf.test(t)||t.length%4===1)throw new TypeError("invalid base64url");let e=atob(t.replaceAll("-","+").replaceAll("_","/"));return Uint8Array.from(e,n=>n.charCodeAt(0))}function Ee(...t){let e=new Uint8Array(t.reduce((r,i)=>r+i.byteLength,0)),n=0;for(let r of t)e.set(r,n),n+=r.byteLength;return e}var ve="eduwork-remote/1";var bf=ne(`${ve} device-auth\0`),wf=ne(`${ve} pairing-code\0`),_f={name:"ECDSA",namedCurve:"P-256"},Sf={name:"ECDSA",hash:"SHA-256"};var dA=()=>crypto.subtle.generateKey(_f,!1,["sign","verify"]);async function CA(t,e,n){let r=new Uint8Array(await crypto.subtle.exportKey("raw",t.publicKey)),i=new Uint8Array(await crypto.subtle.sign(Sf,t.privateKey,Ee(bf,e)));return{t:"auth",key:Lr(r),sig:Lr(i),...n}}async function xA(t){let e=new DataView(await crypto.subtle.digest("SHA-256",Ee(wf,t)));return String(e.getUint32(0)%1e6).padStart(6,"0")}function Wn(t){let[e,n,r,...i]=t.replace(/^#/,"").split(".");try{let A={hostId:e,hostKey:Ze(n),invite:r};return i.length===0&&Ze(A.hostId).length===32&&A.hostKey.length===32&&Ze(A.invite).length===16?A:void 0}catch{return}}var At={normal:1e3,protocolError:4400,unauthorized:4401,forbidden:4403,hostOffline:4404,timeout:4408,replaced:4409,peerClosed:4410,upgradeRequired:4426,overLimit:4429,unavailable:4503};var sA=jn(Na(),1),oA=jn(ji(),1),cI=jn(Xi(),1);var Pa=65519,ka=2**32;var Ra=(t,e)=>ne(`${ve}\0${t}\0${e}`);function Oa(t,e){let n=new sA.default("IK",!0);return n.initialise(e,t),{message:Dr(n.send()),finish:r=>(n.recv(r),qa(n))}}function Ga(t,e,n){let r=new sA.default("IK",!1,t);return r.initialise(e),r.recv(n),{reply:Dr(r.send()),session:qa(r)}}function qa(t){let e=new oA.default(t.tx),n=new oA.default(t.rx),r=0,i=0;return{hash:Dr(t.hash),encrypt(A){if(++r===ka)throw new Error("noise: message limit reached");return Dr(e.encrypt(A))},decrypt(A){if(++i===ka)throw new Error("noise: message limit reached");return Dr(n.decrypt(A))}}}var Dr=t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength);var Nn=16*1024*1024,gI=4*Nn,II=1024*1024,Va=Pa-1,Ja=1,yI=new Uint8Array(0),ee=class extends Error{code;detail;constructor(e,n){super(`channel closed (${e}${n?`: ${n}`:""})`),this.name="ChannelClosed",this.code=e,this.detail=n}},kn=class t{#t;#e=new AbortController;#r;#A=[];#i=[];#o=[];#s=0;#n;static async connect(e,n,r,i){let A=new t(e);return A.#a(i,async()=>{let o=Oa(n,r);return e.send(o.message),o.finish(await A.#f())})}static async accept(e,n,r,i){let A=new t(e);return A.#a(i,async()=>{let{reply:o,session:s}=Ga(n,r,await A.#f());return e.send(o),s})}constructor(e){this.#t=e,e.binaryType="arraybuffer";let n=({data:i})=>{if(!(i instanceof ArrayBuffer))return this.close(At.protocolError,"unexpected text message");this.#r===void 0?this.#A.push(new Uint8Array(i)):this.#h(new Uint8Array(i)),this.#I()},r=({code:i,reason:A})=>this.#c(new ee(i,A));e.addEventListener("message",n),e.addEventListener("close",r),this.signal.addEventListener("abort",()=>{e.removeEventListener("message",n),e.removeEventListener("close",r)},{once:!0})}get signal(){return this.#e.signal}get hash(){return this.#r.hash}async receive(){for(;this.#i.length===0;)this.signal.throwIfAborted(),await this.#g();return this.#i.shift()}send(e,n=yI){if(this.signal.aborted)return;let r=ne(JSON.stringify(e)),i=Ee(new Uint8Array(4),r,n);if(new DataView(i.buffer).setUint32(0,r.byteLength),i.byteLength>Nn)throw new RangeError(`frame of ${i.byteLength} bytes exceeds ${Nn}`);for(let A=0;A<i.byteLength;A+=Va){let o=Math.min(A+Va,i.byteLength);this.#t.send(this.#r.encrypt(Ee(Uint8Array.of(o<i.byteLength?Ja:0),i.subarray(A,o))))}this.#t.bufferedAmount>gI&&this.close(At.overLimit,"peer is not reading")}async drained(){for(;this.#t.bufferedAmount>II;)this.signal.throwIfAborted(),await new Promise(e=>setTimeout(e,10));this.signal.throwIfAborted()}close(e=At.normal,n=""){this.signal.aborted||(this.#t.close(e,n),this.#c(new ee(e,n)))}async#a(e,n){let r=()=>this.close(At.timeout,"handshake timed out");e.aborted&&r(),e.addEventListener("abort",r,{once:!0});try{this.#r=await n();for(let i of this.#A.splice(0))this.#h(i);return this}catch(i){throw this.close(At.protocolError,"handshake failed"),i}finally{e.removeEventListener("abort",r)}}async#f(){for(;this.#A.length===0;)this.signal.throwIfAborted(),await this.#g();return this.#A.shift()}#h(e){if(this.signal.aborted)return;let n;try{n=this.#r.decrypt(e)}catch{return this.close(At.protocolError,"decryption failed")}if(n.byteLength===0||this.#s+n.byteLength-1>Nn)return this.close(At.protocolError,"bad fragment");if(this.#o.push(n.subarray(1)),this.#s+=n.byteLength-1,n[0]===Ja)return;let r=Ee(...this.#o.splice(0));this.#s=0;let i=uI(r);if(i===void 0)return this.close(At.protocolError,"malformed frame");this.#i.push(i)}#c(e){this.signal.aborted||(this.#e.abort(e),this.#I())}#g(){return new Promise(e=>{this.#n=e})}#I(){let e=this.#n;this.#n=void 0,e?.()}};function uI(t){if(t.byteLength<4)return;let e=new DataView(t.buffer,t.byteOffset).getUint32(0);if(!(e>t.byteLength-4))try{let n=JSON.parse(EA(t.subarray(4,4+e)));return typeof n!="object"||n===null||Array.isArray(n)||typeof n.t!="string"?void 0:{header:n,body:t.subarray(4+e)}}catch{return}}var Pn=t=>`h/${t}/`,ja=t=>`h/${t}/app/`;function Wa(t){let e=/^h\/([A-Za-z0-9_-]{43})\/(.*)$/.exec(t);return e===null?void 0:{hostId:e[1],rest:e[2]}}var Xa={host:"v1/host",accept:"v1/host/accept",connect:"v1/connect/"};var Rn=class{#t=1048576;#e;grant(e){this.#t+=e,this.#e?.()}async take(e,n){for(;this.#t===0;)n.throwIfAborted(),await new Promise(i=>{let A=()=>{n.removeEventListener("abort",A),this.#e=void 0,i()};this.#e=A,n.addEventListener("abort",A,{once:!0})});let r=Math.min(e,this.#t);return this.#t-=r,r}};async function za(t,e,n,r,i,A){let o=async h=>{for(let c=0;c<h.byteLength;){let C=await i.take(Math.min(64e3,h.byteLength-c),A);await t.drained(),A.throwIfAborted(),t.send({t:n,id:e},h.subarray(c,c+C)),c+=C}};if(r instanceof Uint8Array)return o(r);let s=r.getReader(),f=()=>{s.cancel(A.reason).catch(()=>{})};A.addEventListener("abort",f,{once:!0});try{for(let h=await s.read();!h.done;h=await s.read())await o(h.value);A.throwIfAborted()}catch(h){throw s.cancel(h).catch(()=>{}),h}finally{A.removeEventListener("abort",f)}}var On=class{readable;#t;#e=1048576;#r=!1;constructor(e,n){this.readable=new ReadableStream({start:r=>{this.#t=r},pull:()=>{let r=this.#t.desiredSize-this.#e;r<262144||(this.#e+=r,e(r))},cancel:r=>{this.#r=!0,n?.(r)}},new ByteLengthQueuingStrategy({highWaterMark:1048576}))}push(e){return e.byteLength>this.#e?!1:(this.#e-=e.byteLength,this.#r||this.#t.enqueue(e),!0)}close(){this.#r||(this.#r=!0,this.#t.close())}error(e){this.#r||(this.#r=!0,this.#t.error(e))}};var Gn=class{#t=[];#e=!1;#r=!1;#A;#i;push(e){this.#e||this.#r||(this.#t.push(e),this.#o())}end(){this.#e=!0,this.#o()}fail(e){this.#e||this.#r||(this.#r=!0,this.#A=e,this.#t.length=0,this.#o())}async next(){for(;;){if(this.#r)throw this.#A;if(this.#t.length>0)return{value:this.#t.shift(),done:!1};if(this.#e)return{value:void 0,done:!0};await new Promise(e=>{this.#i=e})}}[Symbol.asyncIterator](){return{next:()=>this.next()}}#o(){let e=this.#i;this.#i=void 0,e?.()}};var lI=new Set([204,205,304]),aA=class extends Error{name="TunnelError"},fA=class extends Error{name="TunnelStreamError";code;details;constructor({code:e,message:n,details:r}){super(n),this.code=e,this.details=r}};var qn=class{#t;#e=new Map;#r;#A=[];#i=1;constructor(e,n){this.#t=e,this.#r=n??(r=>this.#n(`unexpected frame ${r.t}`)),this.#s()}async fetch(e,n){n?.throwIfAborted(),this.#t.signal.throwIfAborted();let r=this.#i++,i=this.#t,{promise:A,resolve:o,reject:s}=Promise.withResolvers(),f=new Rn,h=new AbortController,c,C=()=>{this.#e.delete(r),h.abort(),n?.removeEventListener("abort",p)},d=x=>{C(),s(x),c?.error(x)},p=()=>{i.send({t:"abort",id:r}),d(n.reason)},w=x=>e.method==="HEAD"||lI.has(x);return i.send({t:"req",id:r,method:e.method,url:e.url,headers:e.headers??{},body:e.body!=null}),n?.addEventListener("abort",p,{once:!0}),this.#e.set(r,{fail:d,receive:({header:x,body:L})=>{switch(x.t){case"res-head":{let{status:Y,headers:B}=x;if(c!==void 0||!EI(Y)||!dI(B))return this.#n("malformed response");c=new On(K=>i.send({t:"credit",id:r,bytes:K}),()=>{i.send({t:"abort",id:r}),C()});try{o(new Response(w(Y)?null:c.readable,{status:Y,headers:B}))}catch(K){i.send({t:"abort",id:r}),d(K)}return}case"res-chunk":c?.push(L)!==!0&&this.#n("unexpected response body");return;case"res-end":return c===void 0?this.#n("response ended before its head"):(C(),c.close());case"res-err":return d(new aA(String(x.message)));case"credit":return Za(x.bytes)?f.grant(x.bytes):this.#n("malformed credit");default:return this.#n(`unexpected frame ${x.t}`)}}}),e.body!=null&&za(i,r,"req-chunk",e.body,f,h.signal).then(()=>i.send({t:"req-end",id:r}),x=>{h.signal.aborted||(i.send({t:"abort",id:r}),d(x))}),A}async*openStream(e,n,r,i){r.throwIfAborted(),this.#t.signal.throwIfAborted();let A=this.#i++,o=new Gn,s=new AbortController,f=()=>o.fail(r.reason);this.#t.send({t:"stream-open",id:A,endpoint:e,payload:n}),this.#e.set(A,{fail:c=>o.fail(c),receive:({header:c})=>{if(c.t==="stream-item")return o.push(c);if(c.t!=="stream-end"&&c.t!=="stream-error")return this.#n(`unexpected frame ${c.t}`);this.#e.delete(A),o.push(c),o.end()}}),r.addEventListener("abort",f,{once:!0}),i!==void 0&&this.#o(A,i,s.signal,o);let h=!1;try{for await(let c of o){if(c.t==="stream-item"){yield c.value;continue}if(h=!0,c.t==="stream-error")throw new fA(CI(c))}}finally{r.removeEventListener("abort",f),s.abort(),h||(this.#e.delete(A),this.#t.send({t:"abort",id:A}))}}async ping(){let e=this.#t.signal;e.throwIfAborted();let{promise:n,resolve:r,reject:i}=Promise.withResolvers(),A=()=>i(e.reason);e.addEventListener("abort",A,{once:!0}),this.#A.push(r),this.#t.send({t:"ping"});try{await n}finally{e.removeEventListener("abort",A)}}async#o(e,n,r,i){let A=n[Symbol.asyncIterator](),o=new Promise(s=>{r.addEventListener("abort",()=>s({done:!0,value:void 0}),{once:!0})});try{for(;;){let s=await Promise.race([A.next(),o]);if(r.aborted)return;if(s.done)return this.#t.send({t:"stream-uplink-end",id:e});this.#t.send({t:"stream-uplink-item",id:e,value:s.value})}}catch(s){r.aborted||i.fail(s)}finally{r.aborted&&A.return?.()?.catch(()=>{})}}async#s(){try{for(;;){let e=await this.#t.receive(),{id:n}=e.header;n===void 0?e.header.t==="pong"?this.#A.shift()?.():this.#r(e.header):Za(n)?this.#e.get(n)?.receive(e):this.#n("malformed exchange id")}}catch{this.#n("tunnel failure");let e=this.#t.signal.reason;for(let n of[...this.#e.values()])n.fail(e);this.#e.clear()}}#n(e){this.#t.close(At.protocolError,e)}},Za=t=>Number.isSafeInteger(t)&&t>0,EI=t=>Number.isInteger(t)&&t>=200&&t<=599,dI=t=>typeof t=="object"&&t!==null&&!Array.isArray(t)&&Object.values(t).every(e=>typeof e=="string");var CI=t=>({code:String(t.code),message:String(t.message),details:typeof t.details=="object"&&t.details!==null?t.details:{}});var $a=15e3,xI=2e4,pI=1e4,tf=[1e3,2e3,5e3,1e4,3e4],le=class extends Error{reason;constructor(e){super(e),this.reason=e}};async function ef(t,e,n){let r=new URL(Xa.connect+t.hostId,document.baseURI);r.protocol=r.protocol==="https:"?"wss:":"ws:";let i=new WebSocket(r);await new Promise((o,s)=>{let f=setTimeout(()=>i.close(),$a);i.addEventListener("message",({data:h})=>{clearTimeout(f),h==='{"t":"open"}'?o():i.close(At.protocolError,"unexpected relay message")},{once:!0}),i.addEventListener("close",({code:h,reason:c})=>{clearTimeout(f),s(new ee(h,c))},{once:!0})});let A=await kn.connect(i,t.hostKey,Ra("relay",t.hostId),AbortSignal.timeout($a));return A.send(await CA(e,A.hash,n)),{channel:A,code:await xA(A.hash),reply:(await A.receive()).header}}async function rf(t,e,n){let r=await dA(),{channel:i,code:A,reply:o}=await ef(t,r,{invite:t.invite,name:e});try{let s=o;if(s.t==="pending"&&(n(A),s=(await i.receive()).header),s.t==="rejected")throw new le(s.reason);if(s.t!=="ready")throw new Error(`unexpected answer ${s.t}`);return{hostId:t.hostId,hostKey:t.hostKey,name:s.host,device:r,pairedAt:new Date().toISOString()}}finally{i.close()}}var Vn=class{#t;#e;#r;#A;#i;constructor(e,n){this.#t=e,this.#e=n}get tunnel(){return this.#r}start(){this.#o()}check(){if(this.#i!==void 0)return this.#i();let e=this.#r,n=this.#A;e!==void 0&&n!==void 0&&this.#n(e,n)}async#o(){for(let e=0;;e++){this.#e({state:"connecting"});let n=!1;try{let{channel:i,reply:A}=await ef(this.#t,this.#t.device);if(A.t==="rejected")throw new le(A.reason);if(A.t!=="ready")throw i.close(At.protocolError,`unexpected answer ${A.t}`),new Error(`unexpected answer ${A.t}`);e=0,await this.#s(i,A.host)}catch(i){if(i instanceof le)return this.#e({state:"unpaired",reason:i.reason});n=i instanceof ee&&i.code===At.hostOffline}let r=tf[Math.min(e,tf.length-1)];this.#e({state:"waiting",offline:n,retryAt:Date.now()+r}),await new Promise(i=>{let A=setTimeout(i,r);this.#i=()=>{clearTimeout(A),i()}}),this.#i=void 0}}async#s(e,n){let r=!1,i=new qn(e,o=>{if(o.t!=="revoked")return e.close(At.protocolError,`unexpected frame ${o.t}`);r=!0});this.#r=i,this.#A=e,this.#e({state:"connected",host:n});let A=setInterval(()=>{this.#n(i,e)},xI);if(await new Promise(o=>e.signal.addEventListener("abort",o,{once:!0})),clearInterval(A),this.#r=void 0,this.#A=void 0,r)throw new le("revoked")}async#n(e,n){let r=setTimeout(()=>n.close(At.timeout,"the Host stopped answering"),pI);await e.ping().catch(()=>{}),clearTimeout(r)}};var hA="hosts",BI=`eduwork-remote ${new URL(document.baseURI).pathname}`;function QI(){return new Promise((t,e)=>{let n=indexedDB.open(BI,1);n.onupgradeneeded=()=>n.result.createObjectStore(hA,{keyPath:"hostId"}),n.onsuccess=()=>t(n.result),n.onerror=()=>e(n.error)})}async function Jn(t,e){let n=await QI();try{return await new Promise((r,i)=>{let A=e(n.transaction(hA,t).objectStore(hA));A.onsuccess=()=>r(A.result),A.onerror=()=>i(A.error)})}finally{n.close()}}var nf=()=>Jn("readonly",t=>t.getAll()),Af=t=>Jn("readonly",e=>e.get(t)),of=async t=>{await Jn("readwrite",e=>e.put(t))},cA=async t=>{await Jn("readwrite",e=>e.delete(t))};var bI={title:"EduWork \u8FDC\u7A0B\u8BBF\u95EE",hosts:"\u5DF2\u914D\u5BF9\u7684\u7535\u8111",noHosts:"\u6B64\u6D4F\u89C8\u5668\u5C1A\u672A\u914D\u5BF9\u7535\u8111\u3002\u8BF7\u5728\u7535\u8111\u4E0A\u6253\u5F00\u201C\u8BBE\u7F6E \u2192 \u8FDC\u7A0B\u8BBF\u95EE \u2192 \u6DFB\u52A0\u8BBE\u5907\u201D\uFF0C\u7136\u540E\u626B\u63CF\u4E8C\u7EF4\u7801\u6216\u6253\u5F00\u94FE\u63A5\u3002",open:"\u6253\u5F00",forget:"\u79FB\u9664",pasteLabel:"\u914D\u5BF9\u94FE\u63A5",pastePlaceholder:"\u7C98\u8D34\u7535\u8111\u4E0A\u663E\u793A\u7684\u914D\u5BF9\u94FE\u63A5",pasteGo:"\u7EE7\u7EED",badLink:"\u914D\u5BF9\u94FE\u63A5\u65E0\u6548\u3002",pairTitle:"\u6DFB\u52A0\u8FD9\u53F0\u8BBE\u5907",deviceName:"\u8BBE\u5907\u540D\u79F0",deviceNameHint:"\u5C06\u663E\u793A\u5728\u7535\u8111\u4E0A\uFF0C\u7528\u4E8E\u8BC6\u522B\u6B64\u8BBE\u5907\u3002",pairGo:"\u5F00\u59CB\u914D\u5BF9",pairOwn:"\u8BF7\u53EA\u4E0E\u81EA\u5DF1\u7684\u7535\u8111\u914D\u5BF9\u3002\u914D\u5BF9\u540E\uFF0C\u8FD9\u53F0\u7535\u8111\u63D0\u4F9B\u7684\u754C\u9762\u5C06\u5728\u6B64\u6D4F\u89C8\u5668\u4E2D\u8FD0\u884C\uFF0C\u5E76\u53EF\u4F7F\u7528\u6B64\u6D4F\u89C8\u5668\u4E0E\u5176\u4ED6\u7535\u8111\u7684\u914D\u5BF9\u3002",iosInstall:"\u5728 iPhone \u6216 iPad \u4E0A\uFF0C\u8BF7\u5148\u5C06\u672C\u9875\u6DFB\u52A0\u5230\u4E3B\u5C4F\u5E55\uFF08\u201C\u5206\u4EAB\u201D\u2192\u201C\u6DFB\u52A0\u5230\u4E3B\u5C4F\u5E55\u201D\uFF09\uFF0C\u518D\u4ECE\u4E3B\u5C4F\u5E55\u6253\u5F00\u5E76\u7C98\u8D34\u914D\u5BF9\u94FE\u63A5\u3002\u4EC5\u5728 Safari \u4E2D\u914D\u5BF9\u65F6\uFF0C7 \u5929\u672A\u4F7F\u7528\u9700\u91CD\u65B0\u914D\u5BF9\u3002",copyLink:"\u590D\u5236\u914D\u5BF9\u94FE\u63A5",copied:"\u5DF2\u590D\u5236",pairHere:"\u4ECD\u5728\u6B64\u5904\u914D\u5BF9",confirmTitle:"\u8BF7\u5728\u7535\u8111\u4E0A\u786E\u8BA4",confirmHint:"\u8BF7\u6838\u5BF9\u7535\u8111\u4E0A\u663E\u793A\u7684\u914D\u5BF9\u7801\u4E0E\u6B64\u5904\u4E00\u81F4\uFF0C\u7136\u540E\u5728\u7535\u8111\u4E0A\u70B9\u51FB\u201C\u5141\u8BB8\u201D\u3002",paired:"\u914D\u5BF9\u6210\u529F\uFF0C\u6B63\u5728\u6253\u5F00\u2026",refused:{"invalid-invite":"\u914D\u5BF9\u94FE\u63A5\u5DF2\u5931\u6548\uFF0C\u8BF7\u5728\u7535\u8111\u4E0A\u91CD\u65B0\u6DFB\u52A0\u8BBE\u5907\u3002","unknown-device":"\u6B64\u8BBE\u5907\u5DF2\u4E0D\u5728\u7535\u8111\u7684\u914D\u5BF9\u5217\u8868\u4E2D\uFF0C\u8BF7\u91CD\u65B0\u914D\u5BF9\u3002",declined:"\u7535\u8111\u5DF2\u62D2\u7EDD\u6B64\u6B21\u914D\u5BF9\u3002",timeout:"\u7535\u8111\u672A\u786E\u8BA4\uFF0C\u914D\u5BF9\u5DF2\u53D6\u6D88\u3002",revoked:"\u6B64\u8BBE\u5907\u5DF2\u5728\u7535\u8111\u4E0A\u88AB\u79FB\u9664\uFF0C\u8BF7\u91CD\u65B0\u914D\u5BF9\u3002"},hostOffline:"\u7535\u8111\u4E0D\u5728\u7EBF\u3002\u8BF7\u786E\u8BA4\u7535\u8111\u5DF2\u5F00\u673A\u3001EduWork \u6B63\u5728\u8FD0\u884C\u4E14\u5DF2\u5F00\u542F\u8FDC\u7A0B\u8BBF\u95EE\u3002",connectFailed:"\u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5\u3002",connecting:"\u6B63\u5728\u8FDE\u63A5\u201C{name}\u201D\u2026",waitingOffline:"\u201C{name}\u201D\u4E0D\u5728\u7EBF\uFF0C{seconds} \u79D2\u540E\u91CD\u8BD5",waitingLost:"\u8FDE\u63A5\u5DF2\u65AD\u5F00\uFF0C{seconds} \u79D2\u540E\u91CD\u8FDE",retry:"\u7ACB\u5373\u91CD\u8BD5",back:"\u8FD4\u56DE",update:"\u6709\u65B0\u7248\u672C\u53EF\u7528\u3002",reload:"\u91CD\u65B0\u52A0\u8F7D",noServiceWorker:"\u6B64\u6D4F\u89C8\u5668\u4E0D\u652F\u6301\u8FDC\u7A0B\u8BBF\u95EE\uFF0C\u8BF7\u6362\u7528\u5176\u4ED6\u6D4F\u89C8\u5668\u6216\u9000\u51FA\u65E0\u75D5\u6A21\u5F0F\u3002"},wI={title:"EduWork remote access",hosts:"Paired computers",noHosts:"This browser is not paired with a computer. On the computer, open Settings \u2192 Remote access \u2192 Add a device, then scan the QR code or open the link.",open:"Open",forget:"Remove",pasteLabel:"Pairing link",pastePlaceholder:"Paste the pairing link shown on the computer",pasteGo:"Continue",badLink:"Invalid pairing link.",pairTitle:"Add this device",deviceName:"Device name",deviceNameHint:"Shown on the computer to identify this device.",pairGo:"Pair",pairOwn:"Pair only with your own computer. Once paired, the interface it provides runs in this browser and can use this browser's pairings with other computers.",iosInstall:"On iPhone or iPad, first add this page to the Home Screen (Share \u2192 Add to Home Screen), then open it from there and paste the pairing link. A pairing made only in Safari expires after 7 days without use.",copyLink:"Copy pairing link",copied:"Copied",pairHere:"Pair here anyway",confirmTitle:"Confirm on the computer",confirmHint:"Check that the computer shows the same pairing code, then click Allow on the computer.",paired:"Paired. Opening\u2026",refused:{"invalid-invite":"This pairing link has expired. Add the device again on the computer.","unknown-device":"This device is no longer paired with the computer. Pair it again.",declined:"The computer declined the pairing.",timeout:"The pairing was not confirmed on the computer and has been cancelled.",revoked:"This device was removed on the computer. Pair it again."},hostOffline:"The computer is offline. Check that it is on, EduWork is running and remote access is allowed.",connectFailed:"Could not connect. Please try again later.",connecting:'Connecting to "{name}"\u2026',waitingOffline:'"{name}" is offline. Retrying in {seconds} s',waitingLost:"Disconnected. Reconnecting in {seconds} s",retry:"Retry now",back:"Back",update:"A new version is available.",reload:"Reload",noServiceWorker:"This browser does not support remote access. Use another browser or leave private browsing."},R=navigator.language.toLowerCase().startsWith("zh")?bI:wI,gA=(t,e)=>t.replace(/\{(\w+)\}/g,(n,r)=>String(e[r]??""));function X(t,e={},...n){let r=Object.assign(document.createElement(t),e);return r.append(...n.filter(i=>i!==!1&&i!==void 0)),r}var yA=new URL(document.baseURI),cf=document.querySelector("main"),re=(...t)=>cf.replaceChildren(X("div",{className:"card"},...t)),Tt=t=>X("p",{className:"note",textContent:t});function gf(t){return t instanceof le?R.refused[t.reason]:t instanceof ee&&t.code===At.hostOffline?R.hostOffline:(console.warn(t),R.connectFailed)}async function If(){let t=Wn(location.hash);if(t!==void 0){let A=location.href;return history.replaceState(null,"",yA),af(t,A)}let e=await nf();if(e.length===1&&!new URLSearchParams(location.search).has("list"))return location.replace(Pn(e[0].hostId));let n=X("input",{type:"url",placeholder:R.pastePlaceholder,autocomplete:"off"}),r=Tt(""),i=()=>{let A=_I(n.value.trim()),o=A===void 0?void 0:Wn(A.hash);if(A===void 0||o===void 0)return void(r.textContent=R.badLink);if(A.origin+A.pathname!==yA.href)return location.assign(A);af(o,A.href)};re(X("h1",{textContent:R.hosts}),e.length===0?Tt(R.noHosts):X("ul",{},...e.map(A=>X("li",{},X("span",{textContent:A.name}),X("a",{className:"button primary",href:Pn(A.hostId),textContent:R.open}),X("button",{textContent:R.forget,onclick:()=>{cA(A.hostId).then(If)}})))),X("label",{},R.pasteLabel,n),X("button",{className:"primary",textContent:R.pasteGo,onclick:i}),r)}function _I(t){try{return new URL(t)}catch{return}}var yf=()=>/iPhone|iPad|iPod/.test(navigator.userAgent)||navigator.userAgent.includes("Macintosh")&&navigator.maxTouchPoints>1,SI=()=>matchMedia("(display-mode: standalone)").matches||navigator.standalone===!0;function sf(){let t=navigator.userAgent,e=/iPhone/.test(t)?"iPhone":/iPad/.test(t)||yf()?"iPad":/Android/.test(t)?"Android":/Mac OS X/.test(t)?"Mac":/Windows/.test(t)?"Windows":/Linux/.test(t)?"Linux":"",n=/EdgA?\/|EdgiOS/.test(t)?"Edge":/Firefox|FxiOS/.test(t)?"Firefox":/Chrome|CriOS/.test(t)?"Chrome":/Safari/.test(t)?"Safari":"";return[e,n].filter(Boolean).join(" ")||"Browser"}function af(t,e){if(yf()&&!SI()){let n=X("button",{className:"primary",textContent:R.copyLink});return n.onclick=()=>{navigator.clipboard.writeText(e).then(()=>n.textContent=R.copied)},re(X("h1",{textContent:R.pairTitle}),Tt(R.iosInstall),n,X("button",{textContent:R.pairHere,onclick:()=>ff(t)}))}ff(t)}function ff(t){let e=X("input",{value:sf(),maxLength:64}),n=async()=>{try{let r=await rf(t,e.value.trim()||sf(),i=>re(X("h1",{textContent:R.confirmTitle}),X("p",{className:"code",textContent:`${i.slice(0,3)} ${i.slice(3)}`}),Tt(R.confirmHint)));await of(r),re(Tt(R.paired)),location.replace(Pn(r.hostId))}catch(r){re(Tt(gf(r)),X("a",{className:"button",href:"?list",textContent:R.back}))}};re(X("h1",{textContent:R.pairTitle}),X("label",{},R.deviceName,e),Tt(R.deviceNameHint),Tt(R.pairOwn),X("button",{className:"primary",textContent:R.pairGo,onclick:()=>{n()}}))}async function mI(t){let e=await Af(t);if(e===void 0)return location.replace("?list");if(!("serviceWorker"in navigator))return re(Tt(R.noServiceWorker));document.title=e.name;let n=navigator.serviceWorker.controller!==null,r=await navigator.serviceWorker.register("sw.js",{scope:"h/"});await DI(r),n&&navigator.serviceWorker.addEventListener("controllerchange",()=>vI(R.update,R.reload,()=>location.reload()),{once:!0});let i=new Vn(e,A=>LI(e,i,A));UI(i),i.start(),document.addEventListener("visibilitychange",()=>document.visibilityState==="visible"&&i.check()),addEventListener("online",()=>i.check())}async function DI(t){let e=t.installing??t.waiting??t.active;e===null||e.state==="activated"||await new Promise(n=>e.addEventListener("statechange",()=>e.state==="activated"&&n()))}function UI(t){let e=async(r,i)=>{let A=t.tunnel;if(A===void 0)return{error:"not connected to the computer"};try{let o=await A.fetch({method:r.method,url:r.url,headers:Object.fromEntries(r.headers),...r.body!==void 0&&{body:new Uint8Array(r.body)}},i??void 0);return{status:o.status,headers:[...o.headers],body:await o.arrayBuffer()}}catch(o){if(i?.aborted)throw i.reason;return{error:String(o)}}};Object.assign(window,{remoteTunnel:{fetch:e,async*openStream(r,i,A,o){let s=t.tunnel;if(s===void 0)throw new Error("not connected to the computer");yield*s.openStream(r,i,A,o)}}}),navigator.serviceWorker.addEventListener("message",({data:r,ports:i})=>{r?.kind==="fetch"&&e(r.request).then(A=>i[0].postMessage(A,"body"in A?[A.body]:[]))}),navigator.serviceWorker.startMessages()}var Ur=X("div",{id:"bar",hidden:!0});document.body.append(Ur);var hf;function LI(t,e,n){if(clearInterval(hf),Ur.hidden=n.state==="connected",n.state==="connecting"&&Ur.replaceChildren(gA(R.connecting,{name:t.name})),n.state==="waiting"){let r=()=>Ur.replaceChildren(gA(n.offline?R.waitingOffline:R.waitingLost,{name:t.name,seconds:Math.max(0,Math.ceil((n.retryAt-Date.now())/1e3))}),X("button",{textContent:R.retry,onclick:()=>e.check()}));r(),hf=setInterval(r,1e3)}n.state==="connected"&&document.querySelector("iframe")===null&&cf.replaceChildren(X("iframe",{src:ja(t.hostId),title:n.host})),n.state==="unpaired"&&(Ur.hidden=!0,cA(t.hostId),re(Tt(R.refused[n.reason]),X("a",{className:"button",href:"?list",textContent:R.back})))}function vI(t,e,n){document.body.append(X("div",{id:"banner"},t,X("button",{textContent:e,onclick:n})))}var IA=Wa(location.pathname.slice(yA.pathname.length));(IA!==void 0&&IA.rest===""?mI(IA.hostId):If()).catch(t=>re(Tt(gf(t))));
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "EduWork",
3
+ "short_name": "EduWork",
4
+ "start_url": "./",
5
+ "scope": "./",
6
+ "display": "standalone",
7
+ "background_color": "#ffffff",
8
+ "theme_color": "#9f2636",
9
+ "icons": [
10
+ {
11
+ "src": "icon.svg",
12
+ "sizes": "any",
13
+ "type": "image/svg+xml"
14
+ },
15
+ {
16
+ "src": "icon.png",
17
+ "sizes": "256x256",
18
+ "type": "image/png"
19
+ }
20
+ ]
21
+ }
@@ -0,0 +1 @@
1
+ "use strict";(()=>{var a=parent.remoteTunnel,s=new URL(document.baseURI);function l(n){let{name:e,code:t,message:r,details:o}=n,d=e==="TunnelStreamError";return Object.assign(new Error(r??"remote stream failed"),{dshRemoteStreamFailure:d?{kind:"remote",code:t,details:structuredClone(o)}:{kind:"carrier"}})}function c(n){let e=n.target?.closest?.("a[download]");if(n.defaultPrevented||!(e instanceof HTMLAnchorElement))return;let t=new URL(e.href);t.origin!==s.origin||!t.pathname.startsWith(s.pathname)||(n.preventDefault(),u(t,e.download).catch(r=>console.error("remote download failed",r)))}var i=HTMLAnchorElement.prototype.click;async function u(n,e){let t=await fetch(n);if(!t.ok)throw new Error(`HTTP ${t.status} for ${n.pathname}`);let r=document.createElement("a");r.href=URL.createObjectURL(await t.blob()),r.download=e||m(t.headers.get("content-disposition")??"")||n.pathname.split("/").at(-1),i.call(r),setTimeout(()=>URL.revokeObjectURL(r.href),6e4)}function m(n){let e=/filename\*=UTF-8''([^;]+)/i.exec(n)?.[1];return e===void 0?/filename="?([^";]+)/i.exec(n)?.[1]:decodeURIComponent(e)}a!==void 0&&(document.documentElement.setAttribute("data-eduwork-remote",""),Object.assign(globalThis,{__DSH_TRANSPORT__:{async fetch(n,e){let t=new URL(n,s),r={method:e.method??"GET",url:`/${t.pathname.slice(s.pathname.length)}${t.search}`,headers:[...new Headers(e.headers)],...e.body!=null&&{body:await new Response(e.body).arrayBuffer()}},o=await a.fetch(r,e.signal);if("error"in o)throw new TypeError(o.error);return new Response(o.body.byteLength===0?null:o.body,{status:o.status,headers:o.headers})},async*openStream(n,e,t,r){try{for await(let o of a.openStream(n,e,t,r))yield structuredClone(o)}catch(o){throw t.aborted?t.reason:l(o)}}}}),addEventListener("click",c,!0),HTMLAnchorElement.prototype.click=function(){this.isConnected||this.addEventListener("click",c,{once:!0}),i.call(this)});})();
package/lib/web/sw.js ADDED
@@ -0,0 +1 @@
1
+ "use strict";(()=>{var h=e=>`h/${e}/`,g=e=>`h/${e}/app/`;function u(e){let t=/^h\/([A-Za-z0-9_-]{43})\/(.*)$/.exec(e);return t===null?void 0:{hostId:t[1],rest:t[2]}}var o=globalThis,d=new URL("../",o.registration.scope),y=`<base href="./"><script src="${d.pathname}preamble.js"><\/script>`,w=new Set([101,204,205,304]);o.addEventListener("install",e=>e.waitUntil(o.skipWaiting()));o.addEventListener("activate",e=>e.waitUntil(o.clients.claim()));o.addEventListener("fetch",e=>{let t=new URL(e.request.url),n=t.origin===d.origin&&t.pathname.startsWith(d.pathname)?u(t.pathname.slice(d.pathname.length)):void 0;n===void 0||!n.rest.startsWith("app/")||e.respondWith(v(e.request,n.hostId,`/${n.rest.slice(4)}${t.search}`))});async function v(e,t,n){let a=e.method==="GET"&&(n.startsWith("/assets/")||/[?&]rev=/.test(n))?await caches.open(`host-${t}`):void 0,c=await a?.match(e);if(c!==void 0)return c;let s=await R(t,{method:e.method,url:n,headers:[...e.headers,["accept-encoding","gzip"]],...e.method!=="GET"&&e.method!=="HEAD"&&{body:await e.arrayBuffer()}});if("error"in s)return Response.error();let i=new Headers(s.headers),r=s.body;if(i.get("content-encoding")==="gzip"&&(r=await new Response(new Blob([r]).stream().pipeThrough(new DecompressionStream("gzip"))).arrayBuffer(),i.delete("content-encoding")),e.mode==="navigate"&&(n==="/"||n.startsWith("/?"))&&i.get("content-type")?.startsWith("text/html")){let m=new TextDecoder().decode(r).replace(/<head(\s[^>]*)?>/i,f=>f+y);return new Response(m,{status:s.status,headers:i})}let p=new Response(w.has(s.status)||e.method==="HEAD"?null:r,{status:s.status,headers:i});return a!==void 0&&p.ok&&await a.put(e,p.clone()),p}async function R(e,t){let a=(await o.clients.matchAll({type:"window",includeUncontrolled:!0})).find(r=>new URL(r.url).pathname===d.pathname+h(e));if(a===void 0)return{error:`no loader page is open for ${g(e)}`};let{port1:c,port2:s}=new MessageChannel,i=new Promise(r=>{c.onmessage=({data:l})=>r(l)});return a.postMessage({kind:"fetch",request:t},[s,...t.body===void 0?[]:[t.body]]),i}})();