From f31ce64c9c733c3e9f889c4024925613e067ba49 Mon Sep 17 00:00:00 2001 From: Pavel Date: Thu, 24 Feb 2022 20:10:01 +0300 Subject: [PATCH] Initial implementation (#1) --- .gitignore | 26 + .prettierrc.js | 8 + aqua/export.aqua | 3 + aqua/hello-registry.aqua | 32 + docs/_aqua/export.d.ts | 39 + docs/avm.wasm | Bin 0 -> 1119081 bytes docs/avmRunner.d.ts | 3 + docs/index.d.ts | 1 + docs/index.html | 1 + docs/index.js | 68 + docs/index.js.map | 1 + docs/main.js | 2 + docs/main.js.LICENSE.txt | 36 + docs/marine-js.wasm | Bin 0 -> 414514 bytes docs/runnerScript.web.js | 871 ++ docs/util.d.ts | 18 + index.html | 33 + package-lock.json | 23808 +++++++++++++++++++++++++++++++++++++ package.json | 47 + src/avmRunner.ts | 10 + src/index.css | 3 + src/index.ts | 97 + src/util.ts | 81 + tsconfig.json | 26 + webpack.config.js | 67 + 25 files changed, 25281 insertions(+) create mode 100644 .gitignore create mode 100644 .prettierrc.js create mode 100644 aqua/export.aqua create mode 100644 aqua/hello-registry.aqua create mode 100644 docs/_aqua/export.d.ts create mode 100755 docs/avm.wasm create mode 100644 docs/avmRunner.d.ts create mode 100644 docs/index.d.ts create mode 100644 docs/index.html create mode 100644 docs/index.js create mode 100644 docs/index.js.map create mode 100644 docs/main.js create mode 100644 docs/main.js.LICENSE.txt create mode 100644 docs/marine-js.wasm create mode 100644 docs/runnerScript.web.js create mode 100644 docs/util.d.ts create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/avmRunner.ts create mode 100644 src/index.css create mode 100644 src/index.ts create mode 100644 src/util.ts create mode 100644 tsconfig.json create mode 100644 webpack.config.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4119809 --- /dev/null +++ b/.gitignore @@ -0,0 +1,26 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release +bundle/ +/dist/ +/worker/dist/ + +# Dependency directories +node_modules/ +jspm_packages/ + +.idea + +# fluence + +public/*.wasm +public/runnerScript.web.js + +src/_aqua \ No newline at end of file diff --git a/.prettierrc.js b/.prettierrc.js new file mode 100644 index 0000000..36f36b8 --- /dev/null +++ b/.prettierrc.js @@ -0,0 +1,8 @@ +module.exports = { + semi: true, + trailingComma: 'all', + singleQuote: true, + printWidth: 120, + tabWidth: 4, + useTabs: false, +}; diff --git a/aqua/export.aqua b/aqua/export.aqua new file mode 100644 index 0000000..a9b0195 --- /dev/null +++ b/aqua/export.aqua @@ -0,0 +1,3 @@ +module Export +import createMyRoute, DiscoveryService, discoverAndNotify from "hello-registry.aqua" +export createMyRoute, DiscoveryService, discoverAndNotify diff --git a/aqua/hello-registry.aqua b/aqua/hello-registry.aqua new file mode 100644 index 0000000..9efde13 --- /dev/null +++ b/aqua/hello-registry.aqua @@ -0,0 +1,32 @@ +module HelloRegistry declares createMyRoute, DiscoveryService, discoverAndNotify + +import "@fluencelabs/registry/routing.aqua" +import "@fluencelabs/aqua-lib/builtin.aqua" + +alias PeerId: string +alias RouteId: string + +data DiscoveredUser: + route: RouteId + userName: string + +service DiscoveryService("discoveryService"): + notify_discovered(route_id: string, userName: string) -> []DiscoveredUser + +func createMyRoute(label: string, userName: string) -> string: + relay: ?string + relay <<- HOST_PEER_ID + res <- createRouteAndRegister(label, userName, relay, nil) + DiscoveryService.notify_discovered(res, userName) + <- res + +func discoverAndNotify(join_route_id: string, label: string, userName: string) -> string, []DiscoveredUser: + relay: ?string + relay <<- HOST_PEER_ID + our_route_id <- createRouteAndRegister(label, userName, relay, nil) + + recs <- resolveRoute(join_route_id, 4) + try: + on recs[0].peer_id via recs[0].relay_id: + peers <- DiscoveryService.notify_discovered(our_route_id, userName) + <- our_route_id, peers \ No newline at end of file diff --git a/docs/_aqua/export.d.ts b/docs/_aqua/export.d.ts new file mode 100644 index 0000000..5685ad2 --- /dev/null +++ b/docs/_aqua/export.d.ts @@ -0,0 +1,39 @@ +/** + * + * This file is auto-generated. Do not edit manually: changes may be erased. + * Generated by Aqua compiler: https://github.com/fluencelabs/aqua/. + * If you find any bugs, please write an issue on GitHub: https://github.com/fluencelabs/aqua/issues + * Aqua version: 0.6.1-279 + * + */ +import { FluencePeer } from '@fluencelabs/fluence'; +import { CallParams } from '@fluencelabs/fluence/dist/internal/compilerSupport/v2'; +export interface DiscoveryServiceDef { + notify_discovered: (route_id: string, userName: string, callParams: CallParams<'route_id' | 'userName'>) => { + route: string; + userName: string; + }[] | Promise<{ + route: string; + userName: string; + }[]>; +} +export declare function registerDiscoveryService(service: DiscoveryServiceDef): void; +export declare function registerDiscoveryService(serviceId: string, service: DiscoveryServiceDef): void; +export declare function registerDiscoveryService(peer: FluencePeer, service: DiscoveryServiceDef): void; +export declare function registerDiscoveryService(peer: FluencePeer, serviceId: string, service: DiscoveryServiceDef): void; +export declare function createMyRoute(label: string, userName: string, config?: { + ttl?: number; +}): Promise; +export declare function createMyRoute(peer: FluencePeer, label: string, userName: string, config?: { + ttl?: number; +}): Promise; +export declare type DiscoverAndNotifyResult = [string, { + route: string; + userName: string; +}[]]; +export declare function discoverAndNotify(join_route_id: string, label: string, userName: string, config?: { + ttl?: number; +}): Promise; +export declare function discoverAndNotify(peer: FluencePeer, join_route_id: string, label: string, userName: string, config?: { + ttl?: number; +}): Promise; diff --git a/docs/avm.wasm b/docs/avm.wasm new file mode 100755 index 0000000000000000000000000000000000000000..c8c5b73f4e8d101bc33891e295c9914bd0ea4185 GIT binary patch literal 1119081 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
`)>cxv+{0@_Mn#Hp0l)PUZd{r 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

^(!ASjpaFfMUf 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žpCW6MW_M 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 literal 0 HcmV?d00001 diff --git a/docs/avmRunner.d.ts b/docs/avmRunner.d.ts new file mode 100644 index 0000000..06b5594 --- /dev/null +++ b/docs/avmRunner.d.ts @@ -0,0 +1,3 @@ +import { AvmRunnerBackground } from '@fluencelabs/avm-runner-background'; +declare const _default: AvmRunnerBackground; +export default _default; diff --git a/docs/index.d.ts b/docs/index.d.ts new file mode 100644 index 0000000..6a9a4b1 --- /dev/null +++ b/docs/index.d.ts @@ -0,0 +1 @@ +import './index.css'; diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..ed70d52 --- /dev/null +++ b/docs/index.html @@ -0,0 +1 @@ +Registry demo

loading
\ No newline at end of file diff --git a/docs/index.js b/docs/index.js new file mode 100644 index 0000000..abb7a49 --- /dev/null +++ b/docs/index.js @@ -0,0 +1,68 @@ +"use strict"; +var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +}; +var __generator = (this && this.__generator) || function (thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var avm_runner_background_1 = require("@fluencelabs/avm-runner-background"); +var js_base64_1 = require("js-base64"); +var vmPeerId = '12D3KooWNzutuy8WHXDKFqFsATvCR6j9cj2FijYbnd47geRKaQZS'; +var b = function (s) { + return (0, js_base64_1.toUint8Array)(s); +}; +var main = function () { return __awaiter(void 0, void 0, void 0, function () { + var runner, s, params, res; + return __generator(this, function (_a) { + switch (_a.label) { + case 0: + runner = new avm_runner_background_1.AvmRunnerBackground(); + return [4 /*yield*/, runner.init('off')]; + case 1: + _a.sent(); + s = "(seq\n (par \n (call \"".concat(vmPeerId, "\" (\"local_service_id\" \"local_fn_name\") [] result_1)\n (call \"remote_peer_id\" (\"service_id\" \"fn_name\") [] g)\n )\n (call \"").concat(vmPeerId, "\" (\"local_service_id\" \"local_fn_name\") [] result_2)\n )"); + params = { initPeerId: vmPeerId, currentPeerId: vmPeerId }; + return [4 /*yield*/, runner.run(s, b(''), b(''), params, [])]; + case 2: + res = _a.sent(); + return [4 /*yield*/, runner.terminate()]; + case 3: + _a.sent(); + return [2 /*return*/, res]; + } + }); +}); }; +// @ts-ignore +window.MAIN = main; +//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/docs/index.js.map b/docs/index.js.map new file mode 100644 index 0000000..84cf056 --- /dev/null +++ b/docs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4EAAyE;AACzE,uCAAyC;AAEzC,IAAM,QAAQ,GAAG,sDAAsD,CAAC;AAExE,IAAM,CAAC,GAAG,UAAC,CAAS;IAChB,OAAO,IAAA,wBAAY,EAAC,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEF,IAAM,IAAI,GAAG;;;;;gBACH,MAAM,GAAG,IAAI,2CAAmB,EAAE,CAAC;gBACzC,qBAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAA;;gBAAxB,SAAwB,CAAC;gBAEnB,CAAC,GAAG,2DAEW,QAAQ,uLAGZ,QAAQ,wEACnB,CAAC;gBAGD,MAAM,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;gBACrD,qBAAM,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAA;;gBAAnD,GAAG,GAAG,SAA6C;gBACzD,qBAAM,MAAM,CAAC,SAAS,EAAE,EAAA;;gBAAxB,SAAwB,CAAC;gBAEzB,sBAAO,GAAG,EAAC;;;KACd,CAAC;AAEF,aAAa;AACb,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC"} \ No newline at end of file diff --git a/docs/main.js b/docs/main.js new file mode 100644 index 0000000..c787fe8 --- /dev/null +++ b/docs/main.js @@ -0,0 +1,2 @@ +/*! For license information please see main.js.LICENSE.txt */ +(()=>{var __webpack_modules__={93619:(e,t,r)=>{"use strict";var n=r(34155);Object.defineProperty(t,"__esModule",{value:!0}),t.DUMP_SESSION_KEYS=t.NOISE_MSG_MAX_LENGTH_BYTES_WITHOUT_TAG=t.NOISE_MSG_MAX_LENGTH_BYTES=void 0,t.NOISE_MSG_MAX_LENGTH_BYTES=65535,t.NOISE_MSG_MAX_LENGTH_BYTES_WITHOUT_TAG=t.NOISE_MSG_MAX_LENGTH_BYTES-16,t.DUMP_SESSION_KEYS=n.env.DUMP_SESSION_KEYS},14510:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decryptStream=t.encryptStream=void 0;const n=r(48764),i=r(93619);t.encryptStream=function(e){return async function*(t){for await(const r of t){const t=n.Buffer.from(r.buffer,r.byteOffset,r.length);for(let r=0;rt.length&&(n=t.length);const o=e.encrypt(t.slice(r,n),e.session);yield o}}}},t.decryptStream=function(e){return async function*(t){for await(const r of t){const t=n.Buffer.from(r.buffer,r.byteOffset,r.length);for(let r=0;rt.length&&(n=t.length);const o=t.slice(r,n),{plaintext:s,valid:a}=await e.decrypt(o,e.session);if(!a)throw new Error("Failed to validate decrypted chunk");yield s}}}}},33477:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode2=t.decode1=t.decode0=t.encode2=t.encode1=t.encode0=t.uint16BEDecode=t.uint16BEEncode=void 0;const n=r(48764);t.uint16BEEncode=(e,t,r)=>((t=t||n.Buffer.allocUnsafe(2)).writeUInt16BE(e,r),t),t.uint16BEEncode.bytes=2,t.uint16BEDecode=e=>{if(e.length<2)throw RangeError("Could not decode int16BE");return e.readUInt16BE(0)},t.uint16BEDecode.bytes=2,t.encode0=function(e){return n.Buffer.concat([e.ne,e.ciphertext])},t.encode1=function(e){return n.Buffer.concat([e.ne,e.ns,e.ciphertext])},t.encode2=function(e){return n.Buffer.concat([e.ns,e.ciphertext])},t.decode0=function(e){if(e.length<32)throw new Error("Cannot decode stage 0 MessageBuffer: length less than 32 bytes.");return{ne:e.slice(0,32),ciphertext:e.slice(32,e.length),ns:n.Buffer.alloc(0)}},t.decode1=function(e){if(e.length<80)throw new Error("Cannot decode stage 1 MessageBuffer: length less than 80 bytes.");return{ne:e.slice(0,32),ns:e.slice(32,80),ciphertext:e.slice(80,e.length)}},t.decode2=function(e){if(e.length<48)throw new Error("Cannot decode stage 2 MessageBuffer: length less than 48 bytes.");return{ne:n.Buffer.alloc(0),ns:e.slice(0,48),ciphertext:e.slice(48,e.length)}}},42692:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FailedIKError=void 0;class r extends Error{constructor(e,t){super(t),this.initialMsg=e,this.name="FailedIKhandshake"}}t.FailedIKError=r},59454:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IKHandshake=void 0;const n=r(4240),i=r(48764),o=r(33477),s=r(48338),a=r(42692),c=r(87123);t.IKHandshake=class{constructor(e,t,r,o,s,a,c,u){this.isInitiator=e,this.payload=i.Buffer.from(t),this.prologue=r,this.staticKeypair=o,this.connection=s,c&&(this.remotePeer=c),this.ik=null!=u?u:new n.IK,this.session=this.ik.initSession(this.isInitiator,this.prologue,this.staticKeypair,a),this.remoteEarlyData=i.Buffer.alloc(0)}async stage0(){if(c.logLocalStaticKeys(this.session.hs.s),c.logRemoteStaticKey(this.session.hs.rs),this.isInitiator){c.logger("IK Stage 0 - Initiator sending message...");const e=this.ik.sendMessage(this.session,this.payload);this.connection.writeLP(o.encode1(e)),c.logger("IK Stage 0 - Initiator sent message."),c.logLocalEphemeralKeys(this.session.hs.e)}else{c.logger("IK Stage 0 - Responder receiving message...");const e=await this.connection.readLP();try{const t=o.decode1(e.slice()),{plaintext:r,valid:n}=this.ik.recvMessage(this.session,t);if(!n)throw new Error("ik handshake stage 0 decryption validation fail");c.logger("IK Stage 0 - Responder got message, going to verify payload.");const i=await s.decodePayload(r);this.remotePeer=this.remotePeer||await s.getPeerIdFromPayload(i),await s.verifySignedPayload(this.session.hs.rs,i,this.remotePeer),this.setRemoteEarlyData(i.data),c.logger("IK Stage 0 - Responder successfully verified payload!"),c.logRemoteEphemeralKey(this.session.hs.re)}catch(t){const r=t;throw c.logger("Responder breaking up with IK handshake in stage 0."),new a.FailedIKError(e,`Error occurred while verifying initiator's signed payload: ${r.message}`)}}}async stage1(){if(this.isInitiator){c.logger("IK Stage 1 - Initiator receiving message...");const e=(await this.connection.readLP()).slice(),t=o.decode0(i.Buffer.from(e)),{plaintext:r,valid:n}=this.ik.recvMessage(this.session,t);c.logger("IK Stage 1 - Initiator got message, going to verify payload.");try{if(!n)throw new Error("ik stage 1 decryption validation fail");const e=await s.decodePayload(r);this.remotePeer=this.remotePeer||await s.getPeerIdFromPayload(e),await s.verifySignedPayload(t.ns.slice(0,32),e,this.remotePeer),this.setRemoteEarlyData(e.data),c.logger("IK Stage 1 - Initiator successfully verified payload!"),c.logRemoteEphemeralKey(this.session.hs.re)}catch(t){const r=t;throw c.logger("Initiator breaking up with IK handshake in stage 1."),new a.FailedIKError(e,`Error occurred while verifying responder's signed payload: ${r.message}`)}}else{c.logger("IK Stage 1 - Responder sending message...");const e=this.ik.sendMessage(this.session,this.payload);this.connection.writeLP(o.encode0(e)),c.logger("IK Stage 1 - Responder sent message..."),c.logLocalEphemeralKeys(this.session.hs.e)}c.logCipherState(this.session)}decrypt(e,t){const r=this.getCS(t,!1);return this.ik.decryptWithAd(r,i.Buffer.alloc(0),e)}encrypt(e,t){const r=this.getCS(t);return this.ik.encryptWithAd(r,i.Buffer.alloc(0),e)}getLocalEphemeralKeys(){if(!this.session.hs.e)throw new Error("Ephemeral keys do not exist.");return this.session.hs.e}getCS(e,t=!0){if(!e.cs1||!e.cs2)throw new Error("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?t?e.cs1:e.cs2:t?e.cs2:e.cs1}setRemoteEarlyData(e){e&&(this.remoteEarlyData=i.Buffer.from(e.buffer,e.byteOffset,e.length))}}},37558:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XXFallbackHandshake=void 0;const n=r(48764),i=r(70461),o=r(48338),s=r(87123),a=r(33477);class c extends i.XXHandshake{constructor(e,t,r,n,i,o,s,a,c){super(e,t,r,n,i,s,c),a&&(this.ephemeralKeys=a),this.initialMsg=o}async propose(){if(this.isInitiator)this.xx.sendMessage(this.session,n.Buffer.alloc(0),this.ephemeralKeys),s.logger("XX Fallback Stage 0 - Initialized state as the first message was sent by initiator."),s.logLocalEphemeralKeys(this.session.hs.e);else{s.logger("XX Fallback Stage 0 - Responder decoding initial msg from IK.");const e=a.decode0(this.initialMsg),{valid:t}=this.xx.recvMessage(this.session,{ne:e.ne,ns:n.Buffer.alloc(0),ciphertext:n.Buffer.alloc(0)});if(!t)throw new Error("xx fallback stage 0 decryption validation fail");s.logger("XX Fallback Stage 0 - Responder used received message from IK."),s.logRemoteEphemeralKey(this.session.hs.re)}}async exchange(){if(this.isInitiator){const e=a.decode1(this.initialMsg),{plaintext:t,valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Error("xx fallback stage 1 decryption validation fail");s.logger("XX Fallback Stage 1 - Initiator used received message from IK."),s.logRemoteEphemeralKey(this.session.hs.re),s.logRemoteStaticKey(this.session.hs.rs),s.logger("Initiator going to check remote's signature...");try{const e=await o.decodePayload(t);this.remotePeer=this.remotePeer||await o.getPeerIdFromPayload(e),await o.verifySignedPayload(this.session.hs.rs,e,this.remotePeer),this.setRemoteEarlyData(e.data)}catch(e){throw new Error(`Error occurred while verifying signed payload from responder: ${e.message}`)}s.logger("All good with the signature!")}else s.logger("XX Fallback Stage 1 - Responder start"),await super.exchange(),s.logger("XX Fallback Stage 1 - Responder end")}}t.XXFallbackHandshake=c},70461:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XXHandshake=void 0;const n=r(48764),i=r(64604),o=r(48338),s=r(87123),a=r(33477);t.XXHandshake=class{constructor(e,t,r,o,s,a,c){this.isInitiator=e,this.payload=t,this.prologue=r,this.staticKeypair=o,this.connection=s,a&&(this.remotePeer=a),this.xx=null!=c?c:new i.XX,this.session=this.xx.initSession(this.isInitiator,this.prologue,this.staticKeypair),this.remoteEarlyData=n.Buffer.alloc(0)}async propose(){if(s.logLocalStaticKeys(this.session.hs.s),this.isInitiator){s.logger("Stage 0 - Initiator starting to send first message.");const e=this.xx.sendMessage(this.session,n.Buffer.alloc(0));this.connection.writeLP(a.encode0(e)),s.logger("Stage 0 - Initiator finished sending first message."),s.logLocalEphemeralKeys(this.session.hs.e)}else{s.logger("Stage 0 - Responder waiting to receive first message...");const e=a.decode0((await this.connection.readLP()).slice()),{valid:t}=this.xx.recvMessage(this.session,e);if(!t)throw new Error("xx handshake stage 0 validation fail");s.logger("Stage 0 - Responder received first message."),s.logRemoteEphemeralKey(this.session.hs.re)}}async exchange(){if(this.isInitiator){s.logger("Stage 1 - Initiator waiting to receive first message from responder...");const e=a.decode1((await this.connection.readLP()).slice()),{plaintext:t,valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Error("xx handshake stage 1 validation fail");s.logger("Stage 1 - Initiator received the message."),s.logRemoteEphemeralKey(this.session.hs.re),s.logRemoteStaticKey(this.session.hs.rs),s.logger("Initiator going to check remote's signature...");try{const r=await o.decodePayload(t);this.remotePeer=this.remotePeer||await o.getPeerIdFromPayload(r),this.remotePeer=await o.verifySignedPayload(e.ns,r,this.remotePeer),this.setRemoteEarlyData(r.data)}catch(e){throw new Error(`Error occurred while verifying signed payload: ${e.message}`)}s.logger("All good with the signature!")}else{s.logger("Stage 1 - Responder sending out first message with signed payload and static key.");const e=this.xx.sendMessage(this.session,this.payload);this.connection.writeLP(a.encode1(e)),s.logger("Stage 1 - Responder sent the second handshake message with signed payload."),s.logLocalEphemeralKeys(this.session.hs.e)}}async finish(){if(this.isInitiator){s.logger("Stage 2 - Initiator sending third handshake message.");const e=this.xx.sendMessage(this.session,this.payload);this.connection.writeLP(a.encode2(e)),s.logger("Stage 2 - Initiator sent message with signed payload.")}else{s.logger("Stage 2 - Responder waiting for third handshake message...");const e=a.decode2((await this.connection.readLP()).slice()),{plaintext:t,valid:r}=this.xx.recvMessage(this.session,e);if(!r)throw new Error("xx handshake stage 2 validation fail");s.logger("Stage 2 - Responder received the message, finished handshake.");try{const e=await o.decodePayload(t);this.remotePeer=this.remotePeer||await o.getPeerIdFromPayload(e),await o.verifySignedPayload(this.session.hs.rs,e,this.remotePeer),this.setRemoteEarlyData(e.data)}catch(e){throw new Error(`Error occurred while verifying signed payload: ${e.message}`)}}s.logCipherState(this.session)}encrypt(e,t){const r=this.getCS(t);return this.xx.encryptWithAd(r,n.Buffer.alloc(0),e)}decrypt(e,t){const r=this.getCS(t,!1);return this.xx.decryptWithAd(r,n.Buffer.alloc(0),e)}getRemoteStaticKey(){return this.session.hs.rs}getCS(e,t=!0){if(!e.cs1||!e.cs2)throw new Error("Handshake not completed properly, cipher state does not exist.");return this.isInitiator?t?e.cs1:e.cs2:t?e.cs2:e.cs1}setRemoteEarlyData(e){e&&(this.remoteEarlyData=n.Buffer.from(e.buffer,e.byteOffset,e.length))}}},88538:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.AbstractHandshake=t.MIN_NONCE=void 0;const s=r(48764),a=o(r(57664)),c=o(r(73294)),u=r(15501),f=r(48338),l=r(87123);t.MIN_NONCE=0,t.AbstractHandshake=class{encryptWithAd(e,t,r){const n=this.encrypt(e.k,e.n,t,r);return this.setNonce(e,this.incrementNonce(e.n)),n}decryptWithAd(e,t,r){const{plaintext:n,valid:i}=this.decrypt(e.k,e.n,t,r);return this.setNonce(e,this.incrementNonce(e.n)),{plaintext:n,valid:i}}hasKey(e){return!this.isEmptyKey(e.k)}setNonce(e,t){e.n=t}createEmptyKey(){return s.Buffer.alloc(32)}isEmptyKey(e){return this.createEmptyKey().equals(e)}incrementNonce(e){return e+1}nonceToBytes(e){const t=s.Buffer.alloc(12);return t.writeUInt32LE(e,4),t}encrypt(e,t,r,n){const i=this.nonceToBytes(t),o=new u.ChaCha20Poly1305(e).seal(i,n,r);return s.Buffer.from(o.buffer,o.byteOffset,o.length)}encryptAndHash(e,t){let r;return r=this.hasKey(e.cs)?this.encryptWithAd(e.cs,e.h,t):t,this.mixHash(e,r),r}decrypt(e,t,r,n){const i=this.nonceToBytes(t),o=new u.ChaCha20Poly1305(e).open(i,n,r);return o?{plaintext:s.Buffer.from(o.buffer,o.byteOffset,o.length),valid:!0}:{plaintext:s.Buffer.from(""),valid:!1}}decryptAndHash(e,t){let r,n=!0;return this.hasKey(e.cs)?({plaintext:r,valid:n}=this.decryptWithAd(e.cs,e.h,t)):r=t,this.mixHash(e,t),{plaintext:r,valid:n}}dh(e,t){try{const r=a.sharedKey(e,t),n=s.Buffer.from(r.buffer,r.byteOffset,r.length),i=s.Buffer.alloc(32);return n.copy(i),i}catch(e){return l.logger(e.message),s.Buffer.alloc(32)}}mixHash(e,t){e.h=this.getHash(e.h,t)}getHash(e,t){const r=c.hash(s.Buffer.from([...e,...t]));return s.Buffer.from(r.buffer,r.byteOffset,r.length)}mixKey(e,t){const[r,n]=f.getHkdf(e.ck,t);e.cs=this.initializeKey(n),e.ck=r}initializeKey(e){return{k:e,n:t.MIN_NONCE}}initializeSymmetric(e){const t=s.Buffer.from(e,"utf-8"),r=this.hashProtocolName(t),n=r,i=this.createEmptyKey();return{cs:this.initializeKey(i),ck:n,h:r}}hashProtocolName(e){if(e.length<=32){const t=s.Buffer.alloc(32);return e.copy(t),t}return this.getHash(e,s.Buffer.alloc(0))}split(e){const[t,r]=f.getHkdf(e.ck,s.Buffer.alloc(0));return{cs1:this.initializeKey(t),cs2:this.initializeKey(r)}}writeMessageRegular(e,t){const r=this.encryptWithAd(e,s.Buffer.alloc(0),t);return{ne:this.createEmptyKey(),ns:s.Buffer.alloc(0),ciphertext:r}}readMessageRegular(e,t){return this.decryptWithAd(e,s.Buffer.alloc(0),t.ciphertext)}}},4240:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IK=void 0;const n=r(48764),i=r(48338),o=r(88538);class s extends o.AbstractHandshake{initSession(e,t,r,n){const i=this.createEmptyKey();let o;return o=e?this.initializeInitiator(t,r,n,i):this.initializeResponder(t,r,n,i),{hs:o,i:e,mc:0}}sendMessage(e,t){let r;if(0===e.mc)r=this.writeMessageA(e.hs,t);else if(1===e.mc){const{messageBuffer:n,h:i,cs1:o,cs2:s}=this.writeMessageB(e.hs,t);r=n,e.h=i,e.cs1=o,e.cs2=s}else{if(!(e.mc>1))throw new Error("Session invalid.");if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");r=this.writeMessageRegular(e.cs1,t)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");r=this.writeMessageRegular(e.cs2,t)}}return e.mc++,r}recvMessage(e,t){let r=n.Buffer.alloc(0),i=!1;if(0===e.mc&&({plaintext:r,valid:i}=this.readMessageA(e.hs,t)),1===e.mc){const{plaintext:n,valid:o,h:s,cs1:a,cs2:c}=this.readMessageB(e.hs,t);r=n,i=o,e.h=s,e.cs1=a,e.cs2=c}return e.mc++,{plaintext:r,valid:i}}writeMessageA(e,t){e.e=i.generateKeypair();const r=e.e.publicKey;this.mixHash(e.ss,r),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));const o=n.Buffer.from(e.s.publicKey),s=this.encryptAndHash(e.ss,o);return this.mixKey(e.ss,this.dh(e.s.privateKey,e.rs)),{ne:r,ns:s,ciphertext:this.encryptAndHash(e.ss,t)}}writeMessageB(e,t){e.e=i.generateKeypair();const r=e.e.publicKey;this.mixHash(e.ss,r),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re)),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));const n=this.encryptAndHash(e.ss,t),o={ne:r,ns:this.createEmptyKey(),ciphertext:n},{cs1:s,cs2:a}=this.split(e.ss);return{messageBuffer:o,cs1:s,cs2:a,h:e.ss.h}}readMessageA(e,t){i.isValidPublicKey(t.ne)&&(e.re=t.ne),this.mixHash(e.ss,e.re),this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));const{plaintext:r,valid:n}=this.decryptAndHash(e.ss,t.ns);n&&32===r.length&&i.isValidPublicKey(r)&&(e.rs=r),this.mixKey(e.ss,this.dh(e.s.privateKey,e.rs));const{plaintext:o,valid:s}=this.decryptAndHash(e.ss,t.ciphertext);return{plaintext:o,valid:n&&s}}readMessageB(e,t){if(i.isValidPublicKey(t.ne)&&(e.re=t.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state should contain ephemeral key by now.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re)),this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));const{plaintext:r,valid:n}=this.decryptAndHash(e.ss,t.ciphertext),{cs1:o,cs2:s}=this.split(e.ss);return{h:e.ss.h,valid:n,plaintext:r,cs1:o,cs2:s}}initializeInitiator(e,t,r,i){const o=this.initializeSymmetric("Noise_IK_25519_ChaChaPoly_SHA256");return this.mixHash(o,e),this.mixHash(o,r),{ss:o,s:t,rs:r,re:n.Buffer.alloc(32),psk:i}}initializeResponder(e,t,r,i){const o=this.initializeSymmetric("Noise_IK_25519_ChaChaPoly_SHA256");return this.mixHash(o,e),this.mixHash(o,t.publicKey),{ss:o,s:t,rs:r,re:n.Buffer.alloc(32),psk:i}}}t.IK=s},64604:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XX=void 0;const n=r(48764),i=r(48338),o=r(88538);class s extends o.AbstractHandshake{initializeInitiator(e,t,r,i){const o=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");return this.mixHash(o,e),{ss:o,s:t,rs:r,psk:i,re:n.Buffer.alloc(32)}}initializeResponder(e,t,r,i){const o=this.initializeSymmetric("Noise_XX_25519_ChaChaPoly_SHA256");return this.mixHash(o,e),{ss:o,s:t,rs:r,psk:i,re:n.Buffer.alloc(32)}}writeMessageA(e,t,r){const o=n.Buffer.alloc(0);e.e=void 0!==r?r:i.generateKeypair();const s=e.e.publicKey;return this.mixHash(e.ss,s),{ne:s,ns:o,ciphertext:this.encryptAndHash(e.ss,t)}}writeMessageB(e,t){e.e=i.generateKeypair();const r=e.e.publicKey;this.mixHash(e.ss,r),this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));const o=n.Buffer.from(e.s.publicKey),s=this.encryptAndHash(e.ss,o);return this.mixKey(e.ss,this.dh(e.s.privateKey,e.re)),{ne:r,ns:s,ciphertext:this.encryptAndHash(e.ss,t)}}writeMessageC(e,t){const r=n.Buffer.from(e.s.publicKey),i=this.encryptAndHash(e.ss,r);this.mixKey(e.ss,this.dh(e.s.privateKey,e.re));const o=this.encryptAndHash(e.ss,t),s={ne:this.createEmptyKey(),ns:i,ciphertext:o},{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,messageBuffer:s,cs1:a,cs2:c}}readMessageA(e,t){return i.isValidPublicKey(t.ne)&&(e.re=t.ne),this.mixHash(e.ss,e.re),this.decryptAndHash(e.ss,t.ciphertext)}readMessageB(e,t){if(i.isValidPublicKey(t.ne)&&(e.re=t.ne),this.mixHash(e.ss,e.re),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.re));const{plaintext:r,valid:n}=this.decryptAndHash(e.ss,t.ns);n&&32===r.length&&i.isValidPublicKey(r)&&(e.rs=r),this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));const{plaintext:o,valid:s}=this.decryptAndHash(e.ss,t.ciphertext);return{plaintext:o,valid:n&&s}}readMessageC(e,t){const{plaintext:r,valid:n}=this.decryptAndHash(e.ss,t.ns);if(n&&32===r.length&&i.isValidPublicKey(r)&&(e.rs=r),!e.e)throw new Error("Handshake state `e` param is missing.");this.mixKey(e.ss,this.dh(e.e.privateKey,e.rs));const{plaintext:o,valid:s}=this.decryptAndHash(e.ss,t.ciphertext),{cs1:a,cs2:c}=this.split(e.ss);return{h:e.ss.h,plaintext:o,valid:n&&s,cs1:a,cs2:c}}initSession(e,t,r){const i=this.createEmptyKey(),o=n.Buffer.alloc(32);let s;return s=e?this.initializeInitiator(t,r,o,i):this.initializeResponder(t,r,o,i),{hs:s,i:e,mc:0}}sendMessage(e,t,r){let n;if(0===e.mc)n=this.writeMessageA(e.hs,t,r);else if(1===e.mc)n=this.writeMessageB(e.hs,t);else if(2===e.mc){const{h:r,messageBuffer:i,cs1:o,cs2:s}=this.writeMessageC(e.hs,t);n=i,e.h=r,e.cs1=o,e.cs2=s}else{if(!(e.mc>2))throw new Error("Session invalid.");if(e.i){if(!e.cs1)throw new Error("CS1 (cipher state) is not defined");n=this.writeMessageRegular(e.cs1,t)}else{if(!e.cs2)throw new Error("CS2 (cipher state) is not defined");n=this.writeMessageRegular(e.cs2,t)}}return e.mc++,n}recvMessage(e,t){let r=n.Buffer.alloc(0),i=!1;if(0===e.mc)({plaintext:r,valid:i}=this.readMessageA(e.hs,t));else if(1===e.mc)({plaintext:r,valid:i}=this.readMessageB(e.hs,t));else if(2===e.mc){const{h:n,plaintext:o,valid:s,cs1:a,cs2:c}=this.readMessageC(e.hs,t);r=o,i=s,e.h=n,e.cs1=a,e.cs2=c}return e.mc++,{plaintext:r,valid:i}}}t.XX=s},42641:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.NOISE=void 0;const o=r(88895);i(r(88895),t),t.NOISE=new o.Noise},23786:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KeyCache=void 0;const r=new class{constructor(){this.storage=new Map}store(e,t){this.storage.set(e.id,t)}load(e){var t;return e&&null!==(t=this.storage.get(e.id))&&void 0!==t?t:null}resetStorage(){this.storage.clear()}};t.KeyCache=r},87123:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.logCipherState=t.logRemoteEphemeralKey=t.logRemoteStaticKey=t.logLocalEphemeralKeys=t.logLocalStaticKeys=t.logger=void 0;const i=n(r(11227)),o=r(93619);let s;t.logger=i.default("libp2p:noise"),s=o.DUMP_SESSION_KEYS?t.logger:()=>{},t.logLocalStaticKeys=function(e){s(`LOCAL_STATIC_PUBLIC_KEY ${e.publicKey.toString("hex")}`),s(`LOCAL_STATIC_PRIVATE_KEY ${e.privateKey.toString("hex")}`)},t.logLocalEphemeralKeys=function(e){e?(s(`LOCAL_PUBLIC_EPHEMERAL_KEY ${e.publicKey.toString("hex")}`),s(`LOCAL_PRIVATE_EPHEMERAL_KEY ${e.privateKey.toString("hex")}`)):s("Missing local ephemeral keys.")},t.logRemoteStaticKey=function(e){s(`REMOTE_STATIC_PUBLIC_KEY ${e.toString("hex")}`)},t.logRemoteEphemeralKey=function(e){s(`REMOTE_EPHEMERAL_PUBLIC_KEY ${e.toString("hex")}`)},t.logCipherState=function(e){e.cs1&&e.cs2?(s(`CIPHER_STATE_1 ${e.cs1.n} ${e.cs1.k.toString("hex")}`),s(`CIPHER_STATE_2 ${e.cs2.n} ${e.cs2.k.toString("hex")}`)):s("Missing cipher state.")}},88895:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Noise=void 0;const a=o(r(57664)),c=r(48764),u=s(r(11712)),f=s(r(63184)),l=s(r(96653)),h=s(r(60618)),d=r(47845),p=r(70461),y=r(59454),g=r(37558),b=r(48338),m=r(33477),v=r(14510),w=r(23786),E=r(87123),_=r(93619);t.Noise=class{constructor(e,t){if(this.protocol="/noise",this.prologue=c.Buffer.alloc(0),this.earlyData=null!=t?t:c.Buffer.alloc(0),this.useNoisePipes=!1,e){const t=a.generateKeyPairFromSeed(e);this.staticKeys={privateKey:c.Buffer.from(t.secretKey.buffer,t.secretKey.byteOffset,t.secretKey.length),publicKey:c.Buffer.from(t.publicKey.buffer,t.publicKey.byteOffset,t.publicKey.length)}}else this.staticKeys=b.generateKeypair()}async secureOutbound(e,t,r){const n=u.default(t,{lengthEncoder:m.uint16BEEncode,lengthDecoder:m.uint16BEDecode,maxDataLength:_.NOISE_MSG_MAX_LENGTH_BYTES}),i=await this.performHandshake({connection:n,isInitiator:!0,localPeer:e,remotePeer:r});return{conn:await this.createSecureConnection(n,i),remoteEarlyData:i.remoteEarlyData,remotePeer:i.remotePeer}}async secureInbound(e,t,r){const n=u.default(t,{lengthEncoder:m.uint16BEEncode,lengthDecoder:m.uint16BEDecode,maxDataLength:_.NOISE_MSG_MAX_LENGTH_BYTES}),i=await this.performHandshake({connection:n,isInitiator:!1,localPeer:e,remotePeer:r});return{conn:await this.createSecureConnection(n,i),remoteEarlyData:i.remoteEarlyData,remotePeer:i.remotePeer}}async performHandshake(e){var t;const r=await b.getPayload(e.localPeer,this.staticKeys.publicKey,this.earlyData);let n=this.useNoisePipes;if(e.isInitiator&&null===w.KeyCache.load(e.remotePeer)&&(n=!1),!n)return await this.performXXHandshake(e,r);{const{remotePeer:n,connection:i,isInitiator:o}=e,s=new y.IKHandshake(o,r,this.prologue,this.staticKeys,i,null!==(t=w.KeyCache.load(e.remotePeer))&&void 0!==t?t:c.Buffer.alloc(32),n);try{return await this.performIKHandshake(s)}catch(t){let n;return e.isInitiator&&(n=s.getLocalEphemeralKeys()),await this.performXXFallbackHandshake(e,r,t.initialMsg,n)}}}async performXXFallbackHandshake(e,t,r,n){const{isInitiator:i,remotePeer:o,connection:s}=e,a=new g.XXFallbackHandshake(i,t,this.prologue,this.staticKeys,s,r,o,n);try{await a.propose(),await a.exchange(),await a.finish()}catch(e){throw E.logger(e),new Error(`Error occurred during XX Fallback handshake: ${e.message}`)}return a}async performXXHandshake(e,t){const{isInitiator:r,remotePeer:n,connection:i}=e,o=new p.XXHandshake(r,t,this.prologue,this.staticKeys,i,n);try{await o.propose(),await o.exchange(),await o.finish(),this.useNoisePipes&&o.remotePeer&&w.KeyCache.store(o.remotePeer,o.getRemoteStaticKey())}catch(e){throw new Error(`Error occurred during XX handshake: ${e.message}`)}return o}async performIKHandshake(e){return await e.stage0(),await e.stage1(),e}async createSecureConnection(e,t){const[r,n]=f.default(),i=e.unwrap();return await h.default(r,l.default,v.encryptStream(t),d.encode({lengthEncoder:m.uint16BEEncode}),i,d.decode({lengthDecoder:m.uint16BEDecode}),l.default,v.decryptStream(t),r),n}}},47144:function(e,t,r){"use strict";var n,i,o;i=[r(62100)],void 0===(o="function"==typeof(n=function(e){var t,r=e.Reader,n=e.Writer,i=e.util,o=e.roots["libp2p-noise"]||(e.roots["libp2p-noise"]={});return o.pb=((t={}).NoiseHandshakePayload=function(){function t(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:i.identityKey=e.bytes();break;case 2:i.identitySig=e.bytes();break;case 3:i.data=e.bytes();break;default:e.skipType(7&s)}}return i},t.decodeDelimited=function(e){return e instanceof r||(e=new r(e)),this.decode(e,e.uint32())},t.verify=function(e){return"object"!=typeof e||null===e?"object expected":null!=e.identityKey&&e.hasOwnProperty("identityKey")&&!(e.identityKey&&"number"==typeof e.identityKey.length||i.isString(e.identityKey))?"identityKey: buffer expected":null!=e.identitySig&&e.hasOwnProperty("identitySig")&&!(e.identitySig&&"number"==typeof e.identitySig.length||i.isString(e.identitySig))?"identitySig: buffer expected":null!=e.data&&e.hasOwnProperty("data")&&!(e.data&&"number"==typeof e.data.length||i.isString(e.data))?"data: buffer expected":null},t.fromObject=function(e){if(e instanceof o.pb.NoiseHandshakePayload)return e;var t=new o.pb.NoiseHandshakePayload;return null!=e.identityKey&&("string"==typeof e.identityKey?i.base64.decode(e.identityKey,t.identityKey=i.newBuffer(i.base64.length(e.identityKey)),0):e.identityKey.length&&(t.identityKey=e.identityKey)),null!=e.identitySig&&("string"==typeof e.identitySig?i.base64.decode(e.identitySig,t.identitySig=i.newBuffer(i.base64.length(e.identitySig)),0):e.identitySig.length&&(t.identitySig=e.identitySig)),null!=e.data&&("string"==typeof e.data?i.base64.decode(e.data,t.data=i.newBuffer(i.base64.length(e.data)),0):e.data.length&&(t.data=e.data)),t},t.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(t.bytes===String?r.identityKey="":(r.identityKey=[],t.bytes!==Array&&(r.identityKey=i.newBuffer(r.identityKey))),t.bytes===String?r.identitySig="":(r.identitySig=[],t.bytes!==Array&&(r.identitySig=i.newBuffer(r.identitySig))),t.bytes===String?r.data="":(r.data=[],t.bytes!==Array&&(r.data=i.newBuffer(r.data)))),null!=e.identityKey&&e.hasOwnProperty("identityKey")&&(r.identityKey=t.bytes===String?i.base64.encode(e.identityKey,0,e.identityKey.length):t.bytes===Array?Array.prototype.slice.call(e.identityKey):e.identityKey),null!=e.identitySig&&e.hasOwnProperty("identitySig")&&(r.identitySig=t.bytes===String?i.base64.encode(e.identitySig,0,e.identitySig.length):t.bytes===Array?Array.prototype.slice.call(e.identitySig):e.identitySig),null!=e.data&&e.hasOwnProperty("data")&&(r.data=t.bytes===String?i.base64.encode(e.data,0,e.data.length):t.bytes===Array?Array.prototype.slice.call(e.data):e.data),r},t.prototype.toJSON=function(){return this.constructor.toObject(this,e.util.toJSONOptions)},t}(),t),o})?n.apply(t,i):n)||(e.exports=o)},48338:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.isValidPublicKey=t.getHkdf=t.verifySignedPayload=t.getHandshakePayload=t.decodePayload=t.getPeerIdFromPayload=t.signPayload=t.createHandshakePayload=t.getPayload=t.generateKeypair=void 0;const a=r(512),c=r(73294),u=o(r(57664)),f=r(48764),l=s(r(88785)),h=r(68884),d=r(47144),p=r(19588),y=d.pb.NoiseHandshakePayload;function g(e,t,r){const n=y.create({identityKey:f.Buffer.from(e),identitySig:t,data:null!=r?r:null});return f.Buffer.from(y.encode(n).finish())}async function b(e,t){return f.Buffer.from(await e.privKey.sign(t))}function m(e){return f.Buffer.concat([f.Buffer.from("noise-libp2p-static-key:"),e])}t.generateKeypair=function(){const e=u.generateKeyPair();return{publicKey:f.Buffer.from(e.publicKey.buffer,e.publicKey.byteOffset,e.publicKey.length),privateKey:f.Buffer.from(e.secretKey.buffer,e.secretKey.byteOffset,e.secretKey.length)}},t.getPayload=async function(e,t,r){const n=await b(e,m(t)),i=null!=r?r:f.Buffer.alloc(0);return g(e.marshalPubKey(),n,i)},t.createHandshakePayload=g,t.signPayload=b,t.getPeerIdFromPayload=async function(e){return await l.default.createFromPubKey(f.Buffer.from(e.identityKey))},t.decodePayload=function(e){return y.toObject(y.decode(f.Buffer.from(e)))},t.getHandshakePayload=m,t.verifySignedPayload=async function(e,t,r){const n=f.Buffer.from(t.identityKey);if(!await async function(e,t){const r=await l.default.createFromPubKey(t);return p.equals(r.id,e)}(r.id,n))throw new Error("Peer ID doesn't match libp2p public key.");const i=m(e),o=h.keys.unmarshalPublicKey(n);if(!t.identitySig||!o.verify(i,f.Buffer.from(t.identitySig)))throw new Error("Static key doesn't match to peer that signed payload!");return await l.default.createFromPubKey(n)},t.getHkdf=function(e,t){const r=new a.HKDF(c.SHA256,t,e).expand(96),n=f.Buffer.from(r.buffer,r.byteOffset,r.length);return[n.slice(0,32),n.slice(32,64),n.slice(64,96)]},t.isValidPublicKey=function(e){return!!f.Buffer.isBuffer(e)&&32===e.length}},69345:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(99842),s=4194304,a=n.alloc(0),c="readLength",u="readData",f={[c]:(e,t,r,n)=>{let o;t=t.append(e);try{o=n.lengthDecoder(t)}catch(e){if(t.length>n.maxLengthLength)throw Object.assign(e,{message:"message length too long",code:"ERR_MSG_LENGTH_TOO_LONG"});if(e instanceof RangeError)return{mode:c,buffer:t,chunk:void 0,state:void 0,data:void 0};throw e}if(o>n.maxDataLength)throw Object.assign(new Error("message data too long"),{code:"ERR_MSG_DATA_TOO_LONG"});return e=t.shallowSlice(n.lengthDecoder.bytes),t=new i,n.onLength&&n.onLength(o),o<=0?(n.onData&&n.onData(a),{mode:c,chunk:e,buffer:t,data:a}):{mode:u,chunk:e,buffer:t,state:{dataLength:o},data:void 0}},[u]:(e,t,r,n)=>{if(t=t.append(e),!r)throw new Error("state is required");if(t.lengtho?t.shallowSlice(o):void 0;return t=new i,n.onData&&n.onData(s),{mode:c,chunk:a,buffer:t,state:void 0,data:s}}};function l(e){const t={lengthDecoder:(e=e||{}).lengthDecoder||o,maxLengthLength:e.maxLengthLength||8,maxDataLength:e.maxDataLength||s,onLength:e.onLength,onData:e.onData};return async function*(e){let r,n=new i,o=c;for await(const i of e){let e=i;for(;e;){const i=f[o](e,n,r,t);o=i.mode,e=i.chunk,n=i.buffer,r=i.state,i.data&&(yield i.data)}}if(n.length)throw Object.assign(new Error("unexpected end of input"),{code:"ERR_UNEXPECTED_EOF"})}}l.fromReader=(e,t)=>{let r=1;const n={[Symbol.asyncIterator](){return this},next:async()=>{try{return await e.next(r)}catch(e){if("ERR_UNDER_READ"===e.code)return{done:!0,value:null};throw e}finally{r=1}}};return l({...t||{},onLength:e=>{r=e}})(n)},e.exports=l,e.exports.MAX_LENGTH_LENGTH=8,e.exports.MAX_DATA_LENGTH=s},22997:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(96175);function s(e){e=e||{};const t=Math.max(e.poolSize||10240,e.minPoolSize||8),r=e.lengthEncoder||o;return async function*(e){let o=n.alloc(t),s=0;for await(const a of e){r(a.length,o,s);const e=o.slice(s,s+r.bytes);s+=r.bytes,o.length-s<8&&(o=n.alloc(t),s=0),yield(new i).append(e).append(a)}}}s.single=(e,t)=>{const r=(t=t||{}).lengthEncoder||o;return new i([r(e.length),e.slice()])},e.exports=s,e.exports.MIN_POOL_SIZE=8,e.exports.DEFAULT_POOL_SIZE=10240},47845:(e,t,r)=>{"use strict";t.encode=r(22997),t.decode=r(69345),t.varintEncode=r(96175),t.varintDecode=r(99842),t.int32BEEncode=r(95839),t.int32BEDecode=r(33080)},33080:e=>{"use strict";const t=e=>{if(e.length<4)throw RangeError("Could not decode int32BE");return e.readInt32BE(0)};t.bytes=4,e.exports=t},95839:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=(e,t,r)=>((t=t||n.allocUnsafe(4)).writeInt32BE(e,r),t);i.bytes=4,e.exports=i},99842:(e,t,r)=>{"use strict";const n=r(88256),{Buffer:i}=r(48764),o=e=>{const t=n.decode(i.isBuffer(e)?e:(r=e,new Proxy({},{get:(e,t)=>"l"===t[0]?r[t]:r.get(parseInt(t))})));var r;return o.bytes=n.decode.bytes,t};e.exports=o},96175:(e,t,r)=>{"use strict";const n=r(88256),{Buffer:i}=r(48764),o=(e,t,r)=>{const s=n.encode(e,t,r);return o.bytes=n.encode.bytes,t||i.from(s)};e.exports=o},77715:(e,t,r)=>{"use strict";const n=r(32114),i={16:"aes-128-ctr",32:"aes-256-ctr"};e.exports=function(e){const t=i[e.length];if(!t){const t=Object.entries(i).map((([e,t])=>`${e} (${t})`)).join(" / ");throw n(new Error(`Invalid key length ${e.length} bytes. Must be ${t}`),"ERR_INVALID_KEY_LENGTH")}return t}},60439:(e,t,r)=>{"use strict";r(8925);const n=r(3832),{toString:i}=r(92263),{fromString:o}=r(52217);e.exports={createCipheriv:(e,t,r)=>{const s=n.cipher.createCipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}},createDecipheriv:(e,t,r)=>{const s=n.cipher.createDecipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}}}},60501:(e,t,r)=>{"use strict";const n=r(60439),i=r(77715);t.create=async function(e,t){const r=i(e),o=n.createCipheriv(r,e,t),s=n.createDecipheriv(r,e,t);return{encrypt:async e=>o.update(e),decrypt:async e=>s.update(e)}}},86322:(e,t,r)=>{"use strict";const{concat:n}=r(20605),{fromString:i}=r(52217),o=r(59701);e.exports={create:function({algorithm:e="AES-GCM",nonceLength:t=12,keyLength:r=16,digest:s="SHA-256",saltLength:a=16,iterations:c=32767}={}){const u=o.get();return r*=8,{encrypt:async function(o,f){const l=u.getRandomValues(new Uint8Array(a)),h=u.getRandomValues(new Uint8Array(t)),d={name:e,iv:h},p={name:"PBKDF2",salt:l,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(f),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["encrypt"]),b=await u.subtle.encrypt(d,g,o);return n([l,d.iv,new Uint8Array(b)])},decrypt:async function(n,o){const f=n.slice(0,a),l=n.slice(a,a+t),h=n.slice(a+t),d={name:e,iv:l},p={name:"PBKDF2",salt:f,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(o),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["decrypt"]),b=await u.subtle.decrypt(d,g,h);return new Uint8Array(b)}}}}},91500:(e,t,r)=>{"use strict";const n=r(59701),i=r(87193),o={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"};t.create=async function(e,t){const r=o[e],s=await n.get().subtle.importKey("raw",t,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{digest:async e=>(async(e,t)=>{const r=await n.get().subtle.sign({name:"HMAC"},e,t);return new Uint8Array(r,r.byteOffset,r.byteLength)})(s,e),length:i[e]}}},87193:e=>{"use strict";e.exports={SHA1:20,SHA256:32,SHA512:64}},68884:(e,t,r)=>{"use strict";const n=r(91500),i=r(60501),o=r(49431);t.aes=i,t.hmac=n,t.keys=o,t.randomBytes=r(18633),t.pbkdf2=r(25113)},76164:(e,t,r)=>{"use strict";const n=r(32114),i=r(59701),{base64urlToBuffer:o}=r(27944),s=r(1098),{toString:a}=r(92263),{concat:c}=r(20605),{equals:u}=r(19588),f={"P-256":256,"P-384":384,"P-521":521};t.generateEphmeralKeyPair=async function(e){s(Object.keys(f),e);const t=await i.get().subtle.generateKey({name:"ECDH",namedCurve:e},!0,["deriveBits"]);return{key:h(await i.get().subtle.exportKey("jwk",t.publicKey)),genSharedKey:async(r,n)=>{let o;o=n?await i.get().subtle.importKey("jwk",p(e,n),{name:"ECDH",namedCurve:e},!1,["deriveBits"]):t.privateKey;const s=[await i.get().subtle.importKey("jwk",d(e,r),{name:"ECDH",namedCurve:e},!1,[]),o],a=await i.get().subtle.deriveBits({name:"ECDH",namedCurve:e,public:s[0]},s[1],f[e]);return new Uint8Array(a,a.byteOffset,a.byteLength)}}};const l={"P-256":32,"P-384":48,"P-521":66};function h(e){const t=l[e.crv];return c([Uint8Array.from([4]),o(e.x,t),o(e.y,t)],1+2*t)}function d(e,t){const r=l[e];if(u(!t.slice(0,1),Uint8Array.from([4])))throw n(new Error("Cannot unmarshal public key - invalid key format"),"ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:e,x:a(t.slice(1,r+1),"base64url"),y:a(t.slice(1+r),"base64url"),ext:!0}}const p=(e,t)=>({...d(e,t.public),d:a(t.private,"base64url")})},15676:(e,t,r)=>{"use strict";const n=r(32114),{equals:i}=r(19588),{sha256:o}=r(56155),{base58btc:s}=r(99086),{identity:a}=r(78103),c=r(82060),u=r(32327),f=r(92352);class l{constructor(e){this._key=d(e,c.publicKeyLength)}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return this._key}get bytes(){return u.PublicKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}}class h{constructor(e,t){this._key=d(e,c.privateKeyLength),this._publicKey=d(t,c.publicKeyLength)}async sign(e){return c.hashAndSign(this._key,e)}get public(){return new l(this._publicKey)}marshal(){return this._key}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}async id(){const e=await a.digest(this.public.bytes);return s.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if("libp2p-key"===t)return f.export(this.bytes,e);throw n(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}function d(e,t){if((e=Uint8Array.from(e||[])).length!==t)throw n(new Error(`Key must be a Uint8Array of length ${t}, got ${e.length}`),"ERR_INVALID_KEY_TYPE");return e}e.exports={Ed25519PublicKey:l,Ed25519PrivateKey:h,unmarshalEd25519PrivateKey:function(e){if(e.length>c.privateKeyLength){const t=(e=d(e,c.privateKeyLength+c.publicKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.privateKeyLength,e.length);return new h(t,r)}const t=(e=d(e,c.privateKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.publicKeyLength);return new h(t,r)},unmarshalEd25519PublicKey:function(e){return e=d(e,c.publicKeyLength),new l(e)},generateKeyPair:async function(){const{privateKey:e,publicKey:t}=await c.generateKey();return new h(e,t)},generateKeyPairFromSeed:async function(e){const{privateKey:t,publicKey:r}=await c.generateKeyFromSeed(e);return new h(t,r)}}},82060:(e,t,r)=>{"use strict";r(80069);const n=r(3832);t.publicKeyLength=n.pki.ed25519.constants.PUBLIC_KEY_BYTE_LENGTH,t.privateKeyLength=n.pki.ed25519.constants.PRIVATE_KEY_BYTE_LENGTH,t.generateKey=async function(){return n.pki.ed25519.generateKeyPair()},t.generateKeyFromSeed=async function(e){return n.pki.ed25519.generateKeyPair({seed:e})},t.hashAndSign=async function(e,t){return n.pki.ed25519.sign({message:t,privateKey:e})},t.hashAndVerify=async function(e,t,r){return n.pki.ed25519.verify({signature:t,message:r,publicKey:e})}},42508:(e,t,r)=>{"use strict";const n=r(76164);e.exports=async e=>n.generateEphmeralKeyPair(e)},92352:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(86322);e.exports={export:async function(e,t){const r=i.create(),o=await r.encrypt(e,t);return n.encode(o)}}},18568:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(86322);e.exports={import:async function(e,t){const r=n.decode(e),o=i.create();return await o.decrypt(r,t)}}},49431:(e,t,r)=>{"use strict";const n=r(32327);r(3068),r(97450);const i=r(3832),o=r(32114),{fromString:s}=r(52217),a=r(18568),c={rsa:r(66406),ed25519:r(15676),secp256k1:r(47233)(n,r(18633))},u="secp256k1 support requires libp2p-crypto-secp256k1 package",f="ERR_MISSING_PACKAGE";function l(e){const t=c[e.toLowerCase()];if(!t){const t=Object.keys(c).join(" / ");throw o(new Error(`invalid or unsupported key type ${e}. Must be ${t}`),"ERR_UNSUPPORTED_KEY_TYPE")}return t}const h=async e=>{const t=n.PrivateKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPrivateKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PrivateKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PrivateKey(r);throw o(new Error(u),f);default:l(t.Type)}};e.exports={supportedKeys:c,keysPBM:n,keyStretcher:r(94036),generateEphemeralKeyPair:r(42508),generateKeyPair:async(e,t)=>l(e).generateKeyPair(t),generateKeyPairFromSeed:async(e,t,r)=>{const n=l(e);if("ed25519"!==e.toLowerCase())throw o(new Error("Seed key derivation is unimplemented for RSA or secp256k1"),"ERR_UNSUPPORTED_KEY_DERIVATION_TYPE");return n.generateKeyPairFromSeed(t,r)},unmarshalPublicKey:e=>{const t=n.PublicKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPublicKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PublicKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PublicKey(r);throw o(new Error(u),f);default:l(t.Type)}},marshalPublicKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),unmarshalPrivateKey:h,marshalPrivateKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),import:async(e,t)=>{try{const r=await a.import(e,t);return h(r)}catch(e){}const r=i.pki.decryptRsaPrivateKey(e,t);if(null===r)throw o(new Error("Cannot read the key, most likely the password is wrong or not a RSA key"),"ERR_CANNOT_DECRYPT_PEM");let n=i.asn1.toDer(i.pki.privateKeyToAsn1(r));return n=s(n.getBytes(),"ascii"),c.rsa.unmarshalRsaPrivateKey(n)}}},55333:(e,t,r)=>{"use strict";r(28095);const n=r(3832),{base64urlToBigInteger:i}=r(27944);function o(e,t){return t.map((t=>i(e[t])))}e.exports={jwk2pub:function(e){return n.pki.setRsaPublicKey(...o(e,["n","e"]))},jwk2priv:function(e){return n.pki.setRsaPrivateKey(...o(e,["n","e","d","p","q","dp","dq","qi"]))}}},94036:(e,t,r)=>{"use strict";const n=r(32114),{concat:i}=r(20605),{fromString:o}=r(52217),s=r(91500),a={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,cipherKeySize:32}};e.exports=async(e,t,r)=>{const c=a[e];if(!c){const t=Object.keys(a).join(" / ");throw n(new Error(`unknown cipher type '${e}'. Must be ${t}`),"ERR_INVALID_CIPHER_TYPE")}if(!t)throw n(new Error("missing hash type"),"ERR_MISSING_HASH_TYPE");const u=c.keySize,f=c.ivSize,l=o("key expansion"),h=2*(f+u+20),d=await s.create(t,r);let p=await d.digest(l);const y=[];let g=0;for(;gh&&(t=h-g),y.push(e),g+=t,p=await d.digest(p)}const b=h/2,m=i(y),v=m.slice(0,b),w=m.slice(b,h),E=e=>({iv:e.slice(0,f),cipherKey:e.slice(f,f+u),macKey:e.slice(f+u)});return{k1:E(v),k2:E(w)}}},32327:(e,t,r)=>{"use strict";var n,i,o=r(62100),s=o.Reader,a=o.Writer,c=o.util,u=o.roots["libp2p-crypto-keys"]||(o.roots["libp2p-crypto-keys"]={});u.KeyType=(n={},(i=Object.create(n))[n[0]="RSA"]=0,i[n[1]="Ed25519"]=1,i[n[2]="Secp256k1"]=2,i),u.PublicKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PublicKey)return e;var t=new u.PublicKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),u.PrivateKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PrivateKey)return e;var t=new u.PrivateKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),e.exports=u},30319:(e,t,r)=>{"use strict";const n=r(59701),i=r(18633),{toString:o}=r(92263),{fromString:s}=r(52217);function a(e){return Promise.all([n.get().subtle.exportKey("jwk",e.privateKey),n.get().subtle.exportKey("jwk",e.publicKey)])}t.utils=r(43075),t.generateKey=async function(e){const t=await n.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await a(t);return{privateKey:r[0],publicKey:r[1]}},t.unmarshalPrivateKey=async function(e){const t=[await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await(r=e,n.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"]))];var r;const i=await a({privateKey:t[0],publicKey:t[1]});return{privateKey:i[0],publicKey:i[1]}},t.getRandomValues=i,t.hashAndSign=async function(e,t){const r=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),i=await n.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(i,i.byteOffset,i.byteLength)},t.hashAndVerify=async function(e,t,r){const i=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return n.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},i,t,r)};const{jwk2pub:c,jwk2priv:u}=r(55333);function f(e,t,r,n){const i=t?c(e):u(e),a=n(o(Uint8Array.from(r),"ascii"),i);return s(a,"ascii")}t.encrypt=function(e,t){return f(e,!0,t,((e,t)=>t.encrypt(e)))},t.decrypt=function(e,t){return f(e,!1,t,((e,t)=>t.decrypt(e)))}},66406:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263);r(63219),r(80069);const a=r(3832),c=r(30319),u=r(32327),f=r(92352);class l{constructor(e){this._key=e}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.utils.jwkToPkix(this._key)}get bytes(){return u.PublicKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}encrypt(e){return c.encrypt(this._key,e)}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class h{constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return c.getRandomValues(16)}async sign(e){return c.hashAndSign(this._key,e)}get public(){if(!this._publicKey)throw i(new Error("public key not provided"),"ERR_PUBKEY_NOT_PROVIDED");return new l(this._publicKey)}decrypt(e){return c.decrypt(this._key,e)}marshal(){return c.utils.jwkToPkcs1(this._key)}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="pkcs-8"){if("pkcs-8"===t){const t=new a.util.ByteBuffer(this.marshal()),r=a.asn1.fromDer(t),n=a.pki.privateKeyFromAsn1(r),i={algorithm:"aes256",count:1e4,saltSize:16,prfAlgorithm:"sha512"};return a.pki.encryptRsaPrivateKey(n,e,i)}if("libp2p-key"===t)return f.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}e.exports={RsaPublicKey:l,RsaPrivateKey:h,unmarshalRsaPublicKey:function(e){const t=c.utils.pkixToJwk(e);return new l(t)},unmarshalRsaPrivateKey:async function(e){const t=c.utils.pkcs1ToJwk(e),r=await c.unmarshalPrivateKey(t);return new h(r.privateKey,r.publicKey)},generateKeyPair:async function(e){const t=await c.generateKey(e);return new h(t.privateKey,t.publicKey)},fromJwk:async function(e){const t=await c.unmarshalPrivateKey(e);return new h(t.privateKey,t.publicKey)}}},43075:(e,t,r)=>{"use strict";r(3068),r(28095);const n=r(3832),{bigIntegerToUintBase64url:i,base64urlToBigInteger:o}=r(27944),{fromString:s}=r(52217),{toString:a}=r(92263);t.pkcs1ToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),d:i(r.d),p:i(r.p),q:i(r.q),dp:i(r.dP),dq:i(r.dQ),qi:i(r.qInv),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkcs1=function(e){const t=n.pki.privateKeyToAsn1({n:o(e.n),e:o(e.e),d:o(e.d),p:o(e.p),q:o(e.q),dP:o(e.dp),dQ:o(e.dq),qInv:o(e.qi)});return s(n.asn1.toDer(t).getBytes(),"ascii")},t.pkixToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkix=function(e){const t=n.pki.publicKeyToAsn1({n:o(e.n),e:o(e.e)});return s(n.asn1.toDer(t).getBytes(),"ascii")}},47233:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263),a=r(92352);e.exports=(e,t,c)=>{c=c||r(27690)(t);class u{constructor(e){c.validatePublicKey(e),this._key=e}verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.compressPublicKey(this._key)}get bytes(){return e.PublicKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class f{constructor(e,t){this._key=e,this._publicKey=t||c.computePublicKey(e),c.validatePrivateKey(this._key),c.validatePublicKey(this._publicKey)}sign(e){return c.hashAndSign(this._key,e)}get public(){return new u(this._publicKey)}marshal(){return this._key}get bytes(){return e.PrivateKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="libp2p-key"){if("libp2p-key"===t)return a.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}return{Secp256k1PublicKey:u,Secp256k1PrivateKey:f,unmarshalSecp256k1PrivateKey:function(e){return new f(e)},unmarshalSecp256k1PublicKey:function(e){return new u(e)},generateKeyPair:async function(){const e=await c.generateKey();return new f(e)}}}},27690:(e,t,r)=>{"use strict";const n=r(17221),{sha256:i}=r(56155);e.exports=e=>{function t(e){if(!n.privateKeyVerify(e))throw new Error("Invalid private key")}return{generateKey:function(){let t;do{t=e(32)}while(!n.privateKeyVerify(t));return t},privateKeyLength:32,hashAndSign:async function(e,t){const{digest:r}=await i.digest(t),o=n.ecdsaSign(r,e);return n.signatureExport(o.signature)},hashAndVerify:async function(e,t,r){const{digest:o}=await i.digest(r);return t=n.signatureImport(t),n.ecdsaVerify(t,o,e)},compressPublicKey:function(e){if(!n.publicKeyVerify(e))throw new Error("Invalid public key");return n.publicKeyConvert(e,!0)},decompressPublicKey:function(e){return n.publicKeyConvert(e,!1)},validatePrivateKey:t,validatePublicKey:function(e){if(!n.publicKeyVerify(e))throw new Error("Invalid public key")},computePublicKey:function(e){return t(e),n.publicKeyCreate(e)}}}},1098:(e,t,r)=>{"use strict";const n=r(32114);e.exports=function(e,t){if(!e.includes(t)){const r=e.join(" / ");throw n(new Error(`Unknown curve: ${t}. Must be ${r}`),"ERR_INVALID_CURVE")}}},25113:(e,t,r)=>{"use strict";const n=r(98960),i=r(97116),o=r(32114),s={sha1:"sha1","sha2-256":"sha256","sha2-512":"sha512"};e.exports=function(e,t,r,a,c){const u=s[c];if(!u){const e=Object.keys(s).join(" / ");throw o(new Error(`Hash '${c}' is unknown or not supported. Must be ${e}`),"ERR_UNSUPPORTED_HASH_TYPE")}const f=n(e,t,r,a,u);return i.encode64(f)}},18633:(e,t,r)=>{"use strict";const n=r(1914),i=r(32114);e.exports=function(e){if(isNaN(e)||e<=0)throw i(new Error("random bytes length must be a Number bigger than 0"),"ERR_INVALID_LENGTH");return n(e)}},27944:(e,t,r)=>{"use strict";r(97116),r(15764);const n=r(3832),{fromString:i}=r(52217),{toString:o}=r(92263),{concat:s}=r(20605);t.bigIntegerToUintBase64url=(e,t)=>{let r=Uint8Array.from(e.abs().toByteArray());if(r=0===r[0]?r.slice(1):r,null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return o(r,"base64url")},t.base64urlToBigInteger=e=>{const r=t.base64urlToBuffer(e);return new n.jsbn.BigInteger(o(r,"base16"),16)},t.base64urlToBuffer=(e,t)=>{let r=i(e,"base64urlpad");if(null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return r}},59701:(e,t)=>{"use strict";t.get=(e=self)=>{const t=e.crypto||e.msCrypto;if(!t||!t.subtle)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}},14786:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},84099:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},88256:(e,t,r)=>{e.exports={encode:r(84099),decode:r(14786),encodingLength:r(48984)}},48984:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.krasnodar=t.testNet=t.stage=void 0,t.stage=[{multiaddr:"/dns4/stage.fluence.dev/tcp/19001/wss/p2p/12D3KooWHCJbJKGDfCgHSoCuK9q4STyRnVveqLoXAPBbXHTZx9Cv",peerId:"12D3KooWHCJbJKGDfCgHSoCuK9q4STyRnVveqLoXAPBbXHTZx9Cv"},{multiaddr:"/dns4/stage.fluence.dev/tcp/19002/wss/p2p/12D3KooWMigkP4jkVyufq5JnDJL6nXvyjeaDNpRfEZqQhsG3sYCU",peerId:"12D3KooWMigkP4jkVyufq5JnDJL6nXvyjeaDNpRfEZqQhsG3sYCU"},{multiaddr:"/dns4/stage.fluence.dev/tcp/19003/wss/p2p/12D3KooWMMGdfVEJ1rWe1nH1nehYDzNEHhg5ogdfiGk88AupCMnf",peerId:"12D3KooWMMGdfVEJ1rWe1nH1nehYDzNEHhg5ogdfiGk88AupCMnf"},{multiaddr:"/dns4/stage.fluence.dev/tcp/19004/wss/p2p/12D3KooWJ4bTHirdTFNZpCS72TAzwtdmavTBkkEXtzo6wHL25CtE",peerId:"12D3KooWJ4bTHirdTFNZpCS72TAzwtdmavTBkkEXtzo6wHL25CtE"},{multiaddr:"/dns4/stage.fluence.dev/tcp/19005/wss/p2p/12D3KooWAKNos2KogexTXhrkMZzFYpLHuWJ4PgoAhurSAv7o5CWA",peerId:"12D3KooWAKNos2KogexTXhrkMZzFYpLHuWJ4PgoAhurSAv7o5CWA"},{multiaddr:"/dns4/stage.fluence.dev/tcp/19990/wss/p2p/12D3KooWDcpWuyrMTDinqNgmXAuRdfd2mTdY9VoXZSAet2pDzh6r",peerId:"12D3KooWDcpWuyrMTDinqNgmXAuRdfd2mTdY9VoXZSAet2pDzh6r"}],t.testNet=[{multiaddr:"/dns4/net01.fluence.dev/tcp/19001/wss/p2p/12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9",peerId:"12D3KooWEXNUbCXooUwHrHBbrmjsrpHXoEphPwbjQXEGyzbqKnE9"},{multiaddr:"/dns4/net01.fluence.dev/tcp/19990/wss/p2p/12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz",peerId:"12D3KooWMhVpgfQxBLkQkJed8VFNvgN4iE6MD7xCybb1ZYWW2Gtz"},{multiaddr:"/dns4/net02.fluence.dev/tcp/19001/wss/p2p/12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er",peerId:"12D3KooWHk9BjDQBUqnavciRPhAYFvqKBe4ZiPPvde7vDaqgn5er"},{multiaddr:"/dns4/net03.fluence.dev/tcp/19001/wss/p2p/12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb",peerId:"12D3KooWBUJifCTgaxAUrcM9JysqCcS4CS8tiYH5hExbdWCAoNwb"},{multiaddr:"/dns4/net04.fluence.dev/tcp/19001/wss/p2p/12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB",peerId:"12D3KooWJbJFaZ3k5sNd8DjQgg3aERoKtBAnirEvPV8yp76kEXHB"},{multiaddr:"/dns4/net05.fluence.dev/tcp/19001/wss/p2p/12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb",peerId:"12D3KooWCKCeqLPSgMnDjyFsJuWqREDtKNHx1JEBiwaMXhCLNTRb"},{multiaddr:"/dns4/net06.fluence.dev/tcp/19001/wss/p2p/12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH",peerId:"12D3KooWKnRcsTpYx9axkJ6d69LPfpPXrkVLe96skuPTAo76LLVH"},{multiaddr:"/dns4/net07.fluence.dev/tcp/19001/wss/p2p/12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv",peerId:"12D3KooWBSdm6TkqnEFrgBuSkpVE3dR1kr6952DsWQRNwJZjFZBv"},{multiaddr:"/dns4/net08.fluence.dev/tcp/19001/wss/p2p/12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H",peerId:"12D3KooWGzNvhSDsgFoHwpWHAyPf1kcTYCGeRBPfznL8J6qdyu2H"},{multiaddr:"/dns4/net09.fluence.dev/tcp/19001/wss/p2p/12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg",peerId:"12D3KooWF7gjXhQ4LaKj6j7ntxsPpGk34psdQicN2KNfBi9bFKXg"},{multiaddr:"/dns4/net10.fluence.dev/tcp/19001/wss/p2p/12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy",peerId:"12D3KooWB9P1xmV3c7ZPpBemovbwCiRRTKd3Kq2jsVPQN4ZukDfy"}],t.krasnodar=[{multiaddr:"/dns4/kras-00.fluence.dev/tcp/19990/wss/p2p/12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e",peerId:"12D3KooWSD5PToNiLQwKDXsu8JSysCwUt8BVUJEqCHcDe7P5h45e"},{multiaddr:"/dns4/kras-00.fluence.dev/tcp/19001/wss/p2p/12D3KooWR4cv1a8tv7pps4HH6wePNaK6gf1Hww5wcCMzeWxyNw51",peerId:"12D3KooWR4cv1a8tv7pps4HH6wePNaK6gf1Hww5wcCMzeWxyNw51"},{multiaddr:"/dns4/kras-01.fluence.dev/tcp/19001/wss/p2p/12D3KooWKnEqMfYo9zvfHmqTLpLdiHXPe4SVqUWcWHDJdFGrSmcA",peerId:"12D3KooWKnEqMfYo9zvfHmqTLpLdiHXPe4SVqUWcWHDJdFGrSmcA"},{multiaddr:"/dns4/kras-02.fluence.dev/tcp/19001/wss/p2p/12D3KooWHLxVhUQyAuZe6AHMB29P7wkvTNMn7eDMcsqimJYLKREf",peerId:"12D3KooWHLxVhUQyAuZe6AHMB29P7wkvTNMn7eDMcsqimJYLKREf"},{multiaddr:"/dns4/kras-03.fluence.dev/tcp/19001/wss/p2p/12D3KooWJd3HaMJ1rpLY1kQvcjRPEvnDwcXrH8mJvk7ypcZXqXGE",peerId:"12D3KooWJd3HaMJ1rpLY1kQvcjRPEvnDwcXrH8mJvk7ypcZXqXGE"},{multiaddr:"/dns4/kras-04.fluence.dev/tcp/19001/wss/p2p/12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi",peerId:"12D3KooWFEwNWcHqi9rtsmDhsYcDbRUCDXH84RC4FW6UfsFWaoHi"},{multiaddr:"/dns4/kras-05.fluence.dev/tcp/19001/wss/p2p/12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS",peerId:"12D3KooWCMr9mU894i8JXAFqpgoFtx6qnV1LFPSfVc3Y34N4h4LS"},{multiaddr:"/dns4/kras-06.fluence.dev/tcp/19001/wss/p2p/12D3KooWDUszU2NeWyUVjCXhGEt1MoZrhvdmaQQwtZUriuGN1jTr",peerId:"12D3KooWDUszU2NeWyUVjCXhGEt1MoZrhvdmaQQwtZUriuGN1jTr"},{multiaddr:"/dns4/kras-07.fluence.dev/tcp/19001/wss/p2p/12D3KooWEFFCZnar1cUJQ3rMWjvPQg6yMV2aXWs2DkJNSRbduBWn",peerId:"12D3KooWEFFCZnar1cUJQ3rMWjvPQg6yMV2aXWs2DkJNSRbduBWn"},{multiaddr:"/dns4/kras-08.fluence.dev/tcp/19001/wss/p2p/12D3KooWFtf3rfCDAfWwt6oLZYZbDfn9Vn7bv7g6QjjQxUUEFVBt",peerId:"12D3KooWFtf3rfCDAfWwt6oLZYZbDfn9Vn7bv7g6QjjQxUUEFVBt"},{multiaddr:"/dns4/kras-09.fluence.dev/tcp/19001/wss/p2p/12D3KooWD7CvsYcpF9HE9CCV9aY3SJ317tkXVykjtZnht2EbzDPm",peerId:"12D3KooWD7CvsYcpF9HE9CCV9aY3SJ317tkXVykjtZnht2EbzDPm"}]},44612:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Fluence=t.setLogLevel=t.FluencePeer=t.KeyPair=void 0;var i=n(r(2043)),o=r(40149),s=r(84165);Object.defineProperty(t,"KeyPair",{enumerable:!0,get:function(){return s.KeyPair}});var a=r(40149);Object.defineProperty(t,"FluencePeer",{enumerable:!0,get:function(){return a.FluencePeer}}),t.setLogLevel=function(e){i.default.setLevel(e)},i.default.setDefaultLevel("WARN");var c=new o.FluencePeer;t.Fluence={start:function(e){return c.start(e)},stop:function(){return c.stop()},getStatus:function(){return c.getStatus()},getPeer:function(){return c}}},29786:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(53818),i=r(48764);t.default=n.isBrowser?i.Buffer:Buffer},84461:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},s=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},a=this&&this.__generator||function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!((i=(i=s.trys).length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},a=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},c=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.FluencePeer=void 0;var u=r(46584),f=r(33322),l=r(29141),h=r(84461),d=r(84165),p=r(70229),y=r(67652),g=c(r(2043)),b=r(68316),m=r(11189),v=r(51943),w=r(19045),E=c(r(29786)),_=function(){function e(){this._isFluenceAwesome=!0,this._incomingParticles=new y.Subject,this._outgoingParticles=new y.Subject,this._particleSpecificHandlers=new Map,this._commonHandlers=new Map,this._relayPeerId=null,this._timeouts=[],this._particleQueues=new Map,this._legacyParticleSpecificHandlers=new Map}return e.isInstance=function(e){return!(!e||!e._isFluenceAwesome)},e.prototype.getStatus=function(){var e,t;return{isInitialized:void 0!==this._keyPair,isConnected:void 0!==this._connection,peerId:(null===(t=null===(e=this._keyPair)||void 0===e?void 0:e.Libp2pPeerId)||void 0===t?void 0:t.toB58String())||null,relayPeerId:this._relayPeerId||null}},e.prototype.start=function(e){return i(this,void 0,void 0,(function(){var t,r,n,i,s=this;return o(this,(function(o){switch(o.label){case 0:return(null==e?void 0:e.KeyPair)?(this._keyPair=e.KeyPair,[3,3]):[3,1];case 1:return t=this,[4,d.KeyPair.randomEd25519()];case 2:t._keyPair=o.sent(),o.label=3;case 3:return this._defaultTTL=void 0!==(null==e?void 0:e.defaultTtlMs)?null==e?void 0:e.defaultTtlMs:7e3,this._avmRunner=(null==e?void 0:e.avmRunner)||new m.AvmRunnerBackground,[4,this._avmRunner.init((null==e?void 0:e.avmLogLevel)||"off")];case 4:return o.sent(),(null==e?void 0:e.connectTo)?(r=void 0,n=e.connectTo.multiaddr,r=n?new u.Multiaddr(n):new u.Multiaddr(e.connectTo),this._relayPeerId=r.getPeerId(),this._connection?[4,this._connection.disconnect()]:[3,6]):[3,9];case 5:o.sent(),o.label=6;case 6:return i=this,[4,h.FluenceConnection.createConnection({peerId:this._keyPair.Libp2pPeerId,relayAddress:r,dialTimeoutMs:e.dialTimeoutMs,onIncomingParticle:function(e){return s._incomingParticles.next({particle:e,onStageChange:function(){}})}})];case 7:return i._connection=o.sent(),[4,this._connect()];case 8:o.sent(),o.label=9;case 9:return this._legacyCallServiceHandler=new l.CallServiceHandler,function(e){for(var t in b.builtInServices)for(var r in b.builtInServices[t]){var n=b.builtInServices[t][r];e.internals.regHandler.common(t,r,n)}}(this),this._classServices={sig:new v.Sig(this._keyPair)},this._classServices.sig.securityGuard=(0,v.defaultSigGuard)(this.getStatus().peerId),(0,w.registerSig)(this,this._classServices.sig),(0,w.registerSig)(this,this.getStatus().peerId,this._classServices.sig),this._startParticleProcessing(),[2]}}))}))},e.prototype.getServices=function(){return n({},this._classServices)},e.prototype.stop=function(){var e;return i(this,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return this._keyPair=void 0,this._relayPeerId=null,this._stopParticleProcessing(),[4,this._disconnect()];case 1:return t.sent(),[4,null===(e=this._avmRunner)||void 0===e?void 0:e.terminate()];case 2:return t.sent(),this._avmRunner=void 0,this._legacyCallServiceHandler=null,this._particleSpecificHandlers.clear(),this._commonHandlers.clear(),[2]}}))}))},Object.defineProperty(e.prototype,"internals",{get:function(){var e=this;return{initiateParticle:function(t,r){if(!e.getStatus().isInitialized)throw"Cannot initiate new particle: peer is not initialized";void 0===t.initPeerId&&(t.initPeerId=e.getStatus().peerId),void 0===t.ttl&&(t.ttl=e._defaultTTL),e._incomingParticles.next({particle:t,onStageChange:r})},regHandler:{common:function(t,r,n){e._commonHandlers.set(A(t,r),n)},forParticle:function(t,r,n,i){var o=e._particleSpecificHandlers.get(t);void 0===o&&(o=new Map,e._particleSpecificHandlers.set(t,o)),o.set(A(r,n),i)}},initiateFlow:function(t){var r=t.particle;e._legacyParticleSpecificHandlers.set(r.id,{handler:t.handler,error:t.error,timeout:t.timeout}),e.internals.initiateParticle(r,(function(e){"interpreterError"===e.stage&&(null==t||t.error(e.errorMessage)),"expired"===e.stage&&(null==t||t.timeout())}))},callServiceHandler:this._legacyCallServiceHandler}},enumerable:!1,configurable:!0}),e.prototype._connect=function(){var e;return i(this,void 0,void 0,(function(){return o(this,(function(t){return[2,null===(e=this._connection)||void 0===e?void 0:e.connect()]}))}))},e.prototype._disconnect=function(){return i(this,void 0,void 0,(function(){return o(this,(function(e){return this._connection?[2,this._connection.disconnect()]:[2]}))}))},e.prototype._startParticleProcessing=function(){var e=this;this._incomingParticles.pipe((0,y.tap)((function(e){e.particle.logTo("debug","particle received:")})),I(this._expireParticle.bind(this))).subscribe((function(t){var r=t.particle,n=e._particleQueues.get(r.id);if(!n){n=e._createParticlesProcessingQueue(),e._particleQueues.set(r.id,n);var i=setTimeout((function(){e._expireParticle(t)}),r.actualTtl());e._timeouts.push(i)}n.next(t)})),this._outgoingParticles.subscribe((function(t){return i(e,void 0,void 0,(function(){return o(this,(function(e){switch(e.label){case 0:return this.getStatus().isInitialized?this._connection?[4,this._connection.sendParticle(t.particle)]:(t.particle.logTo("error","cannot send particle, peer is not connected"),t.onStageChange({stage:"sendingError"}),[2]):[2];case 1:return e.sent(),t.onStageChange({stage:"sent"}),[2]}}))}))}))},e.prototype._expireParticle=function(e){var t=e.particle.id;g.default.debug("particle "+t+" has expired after "+e.particle.ttl+". Deleting particle-related queues and handlers"),this._particleQueues.delete(t),this._particleSpecificHandlers.delete(t),e.onStageChange({stage:"expired"})},e.prototype._createParticlesProcessingQueue=function(){var e=this,t=new y.Subject,r=E.default.from([]);return t.pipe(I(this._expireParticle.bind(this)),(0,y.concatMap)((function(t){return i(e,void 0,void 0,(function(){var e,i;return o(this,(function(o){switch(o.label){case 0:return this.getStatus().isInitialized?[4,T(this.getStatus().peerId,this._avmRunner,t.particle,r)]:[2,null];case 1:return e=o.sent(),i=E.default.from(e.data),r=i,[2,n(n({},t),{result:e,newData:i})]}}))}))}))).subscribe((function(r){return i(e,void 0,void 0,(function(){var e,i,c,u,l,h,d,y,g,b;return o(this,(function(o){if(!this.getStatus().isInitialized)return[2];if(!S(r.result))return r.onStageChange({stage:"interpreterError",errorMessage:r.result.errorMessage}),[2];if(setTimeout((function(){r.onStageChange({stage:"interpreted"})}),0),r.result.nextPeerPks.length>0&&((e=r.particle.clone()).data=r.newData,this._outgoingParticles.next(n(n({},r),{particle:e}))),r.result.callRequests.length>0){i=function(e,i){var o={fnName:i.functionName,args:i.arguments,serviceId:i.serviceId,tetraplets:i.tetraplets,particleContext:r.particle.getParticleContext()};c._execSingleCallRequest(o).catch((function(e){return{retCode:f.ResultCodes.error,result:'Handler failed. fnName="'+o.fnName+'" serviceId="'+o.serviceId+'" error: '+e.toString()}})).then((function(i){var o={result:(0,p.jsonify)(i.result),retCode:i.retCode},s=r.particle.clone();s.callResults=[[e,o]],s.data=E.default.from([]),t.next(n(n({},r),{particle:s}))}))},c=this;try{for(u=s(r.result.callRequests),l=u.next();!l.done;l=u.next())h=a(l.value,2),d=h[0],y=h[1],i(d,y)}catch(e){g={error:e}}finally{try{l&&!l.done&&(b=u.return)&&b.call(u)}finally{if(g)throw g.error}}}else r.onStageChange({stage:"localWorkDone"});return[2]}))}))})),t},e.prototype._execSingleCallRequest=function(e){return i(this,void 0,void 0,(function(){var t,r,n,i,s,a,c;return o(this,(function(o){switch(o.label){case 0:return g.default.debug("executing call service handler",(0,p.jsonify)(e)),t=e.particleContext.particleId,r=this._legacyParticleSpecificHandlers.get(t),n={result:void 0,retCode:void 0},void 0!==r&&(n=r.handler.execute(e)),void 0===(null==n?void 0:n.result)&&(n=this._legacyCallServiceHandler.execute(e)),void 0!==n.retCode?[3,4]:(i=A(e.serviceId,e.fnName),s=this._particleSpecificHandlers.get(t),a=void 0,void 0!==s&&(a=s.get(i)),void 0===a&&(a=this._commonHandlers.get(i)),a?[4,a(e)]:[3,2]);case 1:return c=o.sent(),[3,3];case 2:c={retCode:f.ResultCodes.error,result:"No handler has been registered for serviceId='"+e.serviceId+"' fnName='"+e.fnName+"' args='"+(0,p.jsonify)(e.args)+"'"},o.label=3;case 3:n=c,o.label=4;case 4:return void 0===n.result&&(n.result=null),g.default.debug("executed call service handler, req and res are: ",(0,p.jsonify)(e),(0,p.jsonify)(n)),[2,n]}}))}))},e.prototype._stopParticleProcessing=function(){var e,t;try{for(var r=s(this._timeouts),n=r.next();!n.done;n=r.next()){var i=n.value;clearTimeout(i)}}catch(t){e={error:t}}finally{try{n&&!n.done&&(t=r.return)&&t.call(r)}finally{if(e)throw e.error}}this._particleQueues.clear()},e}();function S(e){return 0===e.retCode}function A(e,t){return e+"/"+t}function T(e,t,r,s){return i(this,void 0,void 0,(function(){var i,a;return o(this,(function(o){switch(o.label){case 0:return r.logTo("debug","Sending particle to interpreter"),g.default.debug("prevData: ",(0,p.dataToString)(s)),[4,t.run(r.script,s,r.data,{initPeerId:r.initPeerId,currentPeerId:e},r.callResults)];case 1:return i=o.sent(),(a=n({},i)).data=(0,p.dataToString)(a.data),S(i)?g.default.debug("Interpreter result: ",(0,p.jsonify)(a)):g.default.error("Interpreter failed: ",(0,p.jsonify)(a)),[2,i]}}))}))}function I(e){return(0,y.pipe)((0,y.tap)((function(t){t.particle.hasExpired()&&e(t)})),(0,y.filter)((function(e){return!e.particle.hasExpired()})))}t.FluencePeer=_},84165:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},s=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},a=this&&this.__generator||function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!((i=(i=s.trys).length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.registerSig=void 0;var n=r(90281);t.registerSig=function(){for(var e=[],t=0;t0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},s=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1?p("identity accepts up to 1 arguments, received "+e.args.length+" arguments"):d(0===e.args.length?{}:e.args[0])},concat:function(e){var t=e.args.map((function(e,t){return[Array.isArray(e),t]})).filter((function(e){var t=o(e,2),r=t[0];return t[1],!r})).map((function(e){var t=o(e,2);return t[0],t[1]}));if(t.length>0){var r=t.join(", ");return p("All arguments of 'concat' must be arrays: arguments "+r+" are not")}return d([].concat.apply([],e.args))},string_to_b58:function(e){return 1!==e.args.length?p("string_to_b58 accepts only one string argument"):d((0,c.encode)((new TextEncoder).encode(e.args[0])))},string_from_b58:function(e){return 1!==e.args.length?p("string_from_b58 accepts only one string argument"):d((new TextDecoder).decode((0,c.decode)(e.args[0])))},bytes_to_b58:function(e){if(1===e.args.length&&Array.isArray(e.args[0])){var t=e.args[0];return d((0,c.encode)(new Uint8Array(t)))}return p("bytes_to_b58 accepts only single argument: array of numbers")},bytes_from_b58:function(e){return 1!==e.args.length?p("bytes_from_b58 accepts only one string argument"):d(Array.from((0,c.decode)(e.args[0])))},sha256_string:function(e){return n(void 0,void 0,void 0,(function(){var t,r,n,s,a,f,l,y;return i(this,(function(i){switch(i.label){case 0:return e.args.length<1||e.args.length>3?[2,p("sha256_string accepts 1-3 arguments, found: "+e.args.length)]:[3,1];case 1:return t=o(e.args,3),r=t[0],n=t[1],s=t[2],a=h.default.from(r),[4,u.sha256.digest(a)];case 2:return f=i.sent(),l=n?f.digest:f.bytes,y=s?Array.from(l):(0,c.encode)(l),[2,d(y)]}}))}))},concat_strings:function(e){var t="".concat.apply("",s([],o(e.args),!1));return d(t)}},debug:{stringify:function(e){var t;return t=0===e.args.length?"":1===e.args.length?e.args[0]:e.args,d((0,l.jsonify)(t))}},math:{add:function(e){return y("math.add")},sub:function(e){return y("math.sub")},mul:function(e){return y("math.mul")},fmul:function(e){return y("math.fmul")},div:function(e){return y("math.div")},rem:function(e){return y("math.rem")},pow:function(e){return y("math.pow")},log:function(e){return y("math.log")}},cmp:{gt:function(e){return y("cmp.gt")},gte:function(e){return y("cmp.gte")},lt:function(e){return y("cmp.lt")},lte:function(e){return y("cmp.lte")},cmp:function(e){return y("cmp.cmp")}},array:{sum:function(e){return y("array.sum")},dedup:function(e){return y("array.dedup")},intersect:function(e){return y("array.intersect")},diff:function(e){return y("array.diff")},sdiff:function(e){return y("array.sdiff")}}}},33322:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.ResultCodes=void 0,(r=t.ResultCodes||(t.ResultCodes={}))[r.success=0]="success",r[r.error=1]="error"},29141:function(e,t,r){"use strict";var n=this&&this.__read||function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},i=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},a=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},c=this&&this.__spreadArray||function(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.jsonify=t.dataToString=t.checkConnection=t.doNothing=t.handleTimeout=t.MakeServiceCall=void 0;var a=s(r(2043)),c=r(33322),u=r(36910),f=s(r(29786));t.MakeServiceCall=function(e){return function(t){return{retCode:c.ResultCodes.success,result:e(t.args)}}},t.handleTimeout=function(e){return function(t){"expired"===t.stage&&e()}},t.doNothing=function(e){},t.checkConnection=function(e,r){return n(void 0,void 0,void 0,(function(){var n,s,c;return i(this,(function(i){switch(i.label){case 0:if(!e.getStatus().isConnected)return[2,!1];n=Math.random().toString(36).substring(7),s=new Promise((function(i,s){var a=u.Particle.createNew('\n (xor\n (seq\n (call %init_peer_id% ("load" "relay") [] init_relay)\n (seq\n (call %init_peer_id% ("load" "msg") [] msg)\n (seq \n (call init_relay ("op" "identity") [msg] result)\n (call %init_peer_id% ("callback" "callback") [result])\n )\n )\n )\n (seq \n (call init_relay ("op" "identity") [])\n (call %init_peer_id% ("callback" "error") [%last_error%])\n )\n )',r);e.internals.regHandler.forParticle(a.id,"load","relay",(0,t.MakeServiceCall)((function(){return e.getStatus().relayPeerId}))),e.internals.regHandler.forParticle(a.id,"load","msg",(0,t.MakeServiceCall)((function(){return n}))),e.internals.regHandler.forParticle(a.id,"callback","callback",(0,t.MakeServiceCall)((function(e){var t=o(e,1)[0];return setTimeout((function(){i(t)}),0),{}}))),e.internals.regHandler.forParticle(a.id,"callback","error",(0,t.MakeServiceCall)((function(e){var t=o(e,1)[0];return setTimeout((function(){s(t)}),0),{}}))),e.internals.initiateParticle(a,(0,t.handleTimeout)((function(){s("particle timed out")})))})),i.label=1;case 1:return i.trys.push([1,3,,4]),[4,s];case 2:return i.sent()!=n&&a.default.warn("unexpected behavior. 'identity' must return the passed arguments."),[2,!0];case 3:return c=i.sent(),a.default.error("Error on establishing connection: ",c),[2,!1];case 4:return[2]}}))}))},t.dataToString=function(e){var t=(new TextDecoder).decode(f.default.from(e));try{return JSON.stringify(JSON.parse(t),null,4)}catch(e){return t}},t.jsonify=function(e){return JSON.stringify(e,null,4)}},34537:e=>{"use strict";e.exports=function(e,t){for(var r=new Array(arguments.length-1),n=0,i=2,o=!0;i{"use strict";var r=t;r.length=function(e){var t=e.length;if(!t)return 0;for(var r=0;--t%4>1&&"="===e.charAt(t);)++r;return Math.ceil(3*e.length)/4-r};for(var n=new Array(64),i=new Array(123),o=0;o<64;)i[n[o]=o<26?o+65:o<52?o+71:o<62?o-4:o-59|43]=o++;r.encode=function(e,t,r){for(var i,o=null,s=[],a=0,c=0;t>2],i=(3&u)<<4,c=1;break;case 1:s[a++]=n[i|u>>4],i=(15&u)<<2,c=2;break;case 2:s[a++]=n[i|u>>6],s[a++]=n[63&u],c=0}a>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,s)),a=0)}return c&&(s[a++]=n[i],s[a++]=61,1===c&&(s[a++]=61)),o?(a&&o.push(String.fromCharCode.apply(String,s.slice(0,a))),o.join("")):String.fromCharCode.apply(String,s.slice(0,a))};var s="invalid encoding";r.decode=function(e,t,r){for(var n,o=r,a=0,c=0;c1)break;if(void 0===(u=i[u]))throw Error(s);switch(a){case 0:n=u,a=1;break;case 1:t[r++]=n<<2|(48&u)>>4,n=u,a=2;break;case 2:t[r++]=(15&n)<<4|(60&u)>>2,n=u,a=3;break;case 3:t[r++]=(3&n)<<6|u,a=0}}if(1===a)throw Error(s);return r-o},r.test=function(e){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(e)}},19211:e=>{"use strict";function t(){this._listeners={}}e.exports=t,t.prototype.on=function(e,t,r){return(this._listeners[e]||(this._listeners[e]=[])).push({fn:t,ctx:r||this}),this},t.prototype.off=function(e,t){if(void 0===e)this._listeners={};else if(void 0===t)this._listeners[e]=[];else for(var r=this._listeners[e],n=0;n{"use strict";function t(e){return"undefined"!=typeof Float32Array?function(){var t=new Float32Array([-0]),r=new Uint8Array(t.buffer),n=128===r[3];function i(e,n,i){t[0]=e,n[i]=r[0],n[i+1]=r[1],n[i+2]=r[2],n[i+3]=r[3]}function o(e,n,i){t[0]=e,n[i]=r[3],n[i+1]=r[2],n[i+2]=r[1],n[i+3]=r[0]}function s(e,n){return r[0]=e[n],r[1]=e[n+1],r[2]=e[n+2],r[3]=e[n+3],t[0]}function a(e,n){return r[3]=e[n],r[2]=e[n+1],r[1]=e[n+2],r[0]=e[n+3],t[0]}e.writeFloatLE=n?i:o,e.writeFloatBE=n?o:i,e.readFloatLE=n?s:a,e.readFloatBE=n?a:s}():function(){function t(e,t,r,n){var i=t<0?1:0;if(i&&(t=-t),0===t)e(1/t>0?0:2147483648,r,n);else if(isNaN(t))e(2143289344,r,n);else if(t>34028234663852886e22)e((i<<31|2139095040)>>>0,r,n);else if(t<11754943508222875e-54)e((i<<31|Math.round(t/1401298464324817e-60))>>>0,r,n);else{var o=Math.floor(Math.log(t)/Math.LN2);e((i<<31|o+127<<23|8388607&Math.round(t*Math.pow(2,-o)*8388608))>>>0,r,n)}}function s(e,t,r){var n=e(t,r),i=2*(n>>31)+1,o=n>>>23&255,s=8388607&n;return 255===o?s?NaN:i*(1/0):0===o?1401298464324817e-60*i*s:i*Math.pow(2,o-150)*(s+8388608)}e.writeFloatLE=t.bind(null,r),e.writeFloatBE=t.bind(null,n),e.readFloatLE=s.bind(null,i),e.readFloatBE=s.bind(null,o)}(),"undefined"!=typeof Float64Array?function(){var t=new Float64Array([-0]),r=new Uint8Array(t.buffer),n=128===r[7];function i(e,n,i){t[0]=e,n[i]=r[0],n[i+1]=r[1],n[i+2]=r[2],n[i+3]=r[3],n[i+4]=r[4],n[i+5]=r[5],n[i+6]=r[6],n[i+7]=r[7]}function o(e,n,i){t[0]=e,n[i]=r[7],n[i+1]=r[6],n[i+2]=r[5],n[i+3]=r[4],n[i+4]=r[3],n[i+5]=r[2],n[i+6]=r[1],n[i+7]=r[0]}function s(e,n){return r[0]=e[n],r[1]=e[n+1],r[2]=e[n+2],r[3]=e[n+3],r[4]=e[n+4],r[5]=e[n+5],r[6]=e[n+6],r[7]=e[n+7],t[0]}function a(e,n){return r[7]=e[n],r[6]=e[n+1],r[5]=e[n+2],r[4]=e[n+3],r[3]=e[n+4],r[2]=e[n+5],r[1]=e[n+6],r[0]=e[n+7],t[0]}e.writeDoubleLE=n?i:o,e.writeDoubleBE=n?o:i,e.readDoubleLE=n?s:a,e.readDoubleBE=n?a:s}():function(){function t(e,t,r,n,i,o){var s=n<0?1:0;if(s&&(n=-n),0===n)e(0,i,o+t),e(1/n>0?0:2147483648,i,o+r);else if(isNaN(n))e(0,i,o+t),e(2146959360,i,o+r);else if(n>17976931348623157e292)e(0,i,o+t),e((s<<31|2146435072)>>>0,i,o+r);else{var a;if(n<22250738585072014e-324)e((a=n/5e-324)>>>0,i,o+t),e((s<<31|a/4294967296)>>>0,i,o+r);else{var c=Math.floor(Math.log(n)/Math.LN2);1024===c&&(c=1023),e(4503599627370496*(a=n*Math.pow(2,-c))>>>0,i,o+t),e((s<<31|c+1023<<20|1048576*a&1048575)>>>0,i,o+r)}}}function s(e,t,r,n,i){var o=e(n,i+t),s=e(n,i+r),a=2*(s>>31)+1,c=s>>>20&2047,u=4294967296*(1048575&s)+o;return 2047===c?u?NaN:a*(1/0):0===c?5e-324*a*u:a*Math.pow(2,c-1075)*(u+4503599627370496)}e.writeDoubleLE=t.bind(null,r,0,4),e.writeDoubleBE=t.bind(null,n,4,0),e.readDoubleLE=s.bind(null,i,0,4),e.readDoubleBE=s.bind(null,o,4,0)}(),e}function r(e,t,r){t[r]=255&e,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}function n(e,t,r){t[r]=e>>>24,t[r+1]=e>>>16&255,t[r+2]=e>>>8&255,t[r+3]=255&e}function i(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function o(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}e.exports=t(t)},67199:module=>{"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}module.exports=inquire},76662:e=>{"use strict";e.exports=function(e,t,r){var n=r||8192,i=n>>>1,o=null,s=n;return function(r){if(r<1||r>i)return e(r);s+r>n&&(o=e(n),s=0);var a=t.call(o,s,s+=r);return 7&s&&(s=1+(7|s)),a}}},94997:(e,t)=>{"use strict";var r=t;r.length=function(e){for(var t=0,r=0,n=0;n191&&n<224?o[s++]=(31&n)<<6|63&e[t++]:n>239&&n<365?(n=((7&n)<<18|(63&e[t++])<<12|(63&e[t++])<<6|63&e[t++])-65536,o[s++]=55296+(n>>10),o[s++]=56320+(1023&n)):o[s++]=(15&n)<<12|(63&e[t++])<<6|63&e[t++],s>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),s=0);return i?(s&&i.push(String.fromCharCode.apply(String,o.slice(0,s))),i.join("")):String.fromCharCode.apply(String,o.slice(0,s))},r.write=function(e,t,r){for(var n,i,o=r,s=0;s>6|192,t[r++]=63&n|128):55296==(64512&n)&&56320==(64512&(i=e.charCodeAt(s+1)))?(n=65536+((1023&n)<<10)+(1023&i),++s,t[r++]=n>>18|240,t[r++]=n>>12&63|128,t[r++]=n>>6&63|128,t[r++]=63&n|128):(t[r++]=n>>12|224,t[r++]=n>>6&63|128,t[r++]=63&n|128);return r-o}},98099:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(97117);function i(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function o(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function s(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function a(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function u(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function f(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function l(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function h(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),f(e/4294967296>>>0,t,r),f(e>>>0,t,r+4),t}function d(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),l(e>>>0,t,r),l(e/4294967296>>>0,t,r+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=s,t.readUint32BE=a,t.readInt32LE=c,t.readUint32LE=u,t.writeUint32BE=f,t.writeInt32BE=f,t.writeUint32LE=l,t.writeInt32LE=l,t.readInt64BE=function(e,t){void 0===t&&(t=0);var r=s(e,t),n=s(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*a(e,t)+a(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var r=c(e,t);return 4294967296*c(e,t+4)+r-4294967296*(r>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var r=u(e,t);return 4294967296*u(e,t+4)+r},t.writeUint64BE=h,t.writeInt64BE=h,t.writeUint64LE=d,t.writeInt64LE=d,t.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!=0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,o=e/8+r-1;o>=r;o--)n+=t[o]*i,i*=256;return n},t.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!=0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,o=r;o=i;s--)r[s]=t/o&255,o*=256;return r},t.writeUintLE=function(e,t,r,i){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!=0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!n.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,s=i;s{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(98099),i=r(17309);function o(e,t,r){for(var i=1634760805,o=857760878,s=2036477234,a=1797285236,c=r[3]<<24|r[2]<<16|r[1]<<8|r[0],u=r[7]<<24|r[6]<<16|r[5]<<8|r[4],f=r[11]<<24|r[10]<<16|r[9]<<8|r[8],l=r[15]<<24|r[14]<<16|r[13]<<8|r[12],h=r[19]<<24|r[18]<<16|r[17]<<8|r[16],d=r[23]<<24|r[22]<<16|r[21]<<8|r[20],p=r[27]<<24|r[26]<<16|r[25]<<8|r[24],y=r[31]<<24|r[30]<<16|r[29]<<8|r[28],g=t[3]<<24|t[2]<<16|t[1]<<8|t[0],b=t[7]<<24|t[6]<<16|t[5]<<8|t[4],m=t[11]<<24|t[10]<<16|t[9]<<8|t[8],v=t[15]<<24|t[14]<<16|t[13]<<8|t[12],w=i,E=o,_=s,S=a,A=c,T=u,I=f,C=l,P=h,R=d,k=p,B=y,x=g,M=b,O=m,N=v,L=0;L<20;L+=2)A=(A^=P=P+(x=(x^=w=w+A|0)>>>16|x<<16)|0)>>>20|A<<12,T=(T^=R=R+(M=(M^=E=E+T|0)>>>16|M<<16)|0)>>>20|T<<12,I=(I^=k=k+(O=(O^=_=_+I|0)>>>16|O<<16)|0)>>>20|I<<12,C=(C^=B=B+(N=(N^=S=S+C|0)>>>16|N<<16)|0)>>>20|C<<12,I=(I^=k=k+(O=(O^=_=_+I|0)>>>24|O<<8)|0)>>>25|I<<7,C=(C^=B=B+(N=(N^=S=S+C|0)>>>24|N<<8)|0)>>>25|C<<7,T=(T^=R=R+(M=(M^=E=E+T|0)>>>24|M<<8)|0)>>>25|T<<7,A=(A^=P=P+(x=(x^=w=w+A|0)>>>24|x<<8)|0)>>>25|A<<7,T=(T^=k=k+(N=(N^=w=w+T|0)>>>16|N<<16)|0)>>>20|T<<12,I=(I^=B=B+(x=(x^=E=E+I|0)>>>16|x<<16)|0)>>>20|I<<12,C=(C^=P=P+(M=(M^=_=_+C|0)>>>16|M<<16)|0)>>>20|C<<12,A=(A^=R=R+(O=(O^=S=S+A|0)>>>16|O<<16)|0)>>>20|A<<12,C=(C^=P=P+(M=(M^=_=_+C|0)>>>24|M<<8)|0)>>>25|C<<7,A=(A^=R=R+(O=(O^=S=S+A|0)>>>24|O<<8)|0)>>>25|A<<7,I=(I^=B=B+(x=(x^=E=E+I|0)>>>24|x<<8)|0)>>>25|I<<7,T=(T^=k=k+(N=(N^=w=w+T|0)>>>24|N<<8)|0)>>>25|T<<7;n.writeUint32LE(w+i|0,e,0),n.writeUint32LE(E+o|0,e,4),n.writeUint32LE(_+s|0,e,8),n.writeUint32LE(S+a|0,e,12),n.writeUint32LE(A+c|0,e,16),n.writeUint32LE(T+u|0,e,20),n.writeUint32LE(I+f|0,e,24),n.writeUint32LE(C+l|0,e,28),n.writeUint32LE(P+h|0,e,32),n.writeUint32LE(R+d|0,e,36),n.writeUint32LE(k+p|0,e,40),n.writeUint32LE(B+y|0,e,44),n.writeUint32LE(x+g|0,e,48),n.writeUint32LE(M+b|0,e,52),n.writeUint32LE(O+m|0,e,56),n.writeUint32LE(N+v|0,e,60)}function s(e,t,r,n,s){if(void 0===s&&(s=0),32!==e.length)throw new Error("ChaCha: key size must be 32 bytes");if(n.length>>=8,t++;if(n>0)throw new Error("ChaCha: counter overflow")}t.streamXOR=s,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),s(e,t,r,r,n)}},15501:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25439),i=r(63027),o=r(17309),s=r(98099),a=r(4153);t.KEY_LENGTH=32,t.NONCE_LENGTH=12,t.TAG_LENGTH=16;var c=new Uint8Array(16),u=function(){function e(e){if(this.nonceLength=t.NONCE_LENGTH,this.tagLength=t.TAG_LENGTH,e.length!==t.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(e)}return e.prototype.seal=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var s=new Uint8Array(16);s.set(e,s.length-e.length);var a=new Uint8Array(32);n.stream(this._key,s,a,4);var c,u=t.length+this.tagLength;if(i){if(i.length!==u)throw new Error("ChaCha20Poly1305: incorrect destination length");c=i}else c=new Uint8Array(u);return n.streamXOR(this._key,s,t,c,4),this._authenticate(c.subarray(c.length-this.tagLength,c.length),a,c.subarray(0,c.length-this.tagLength),r),o.wipe(s),c},e.prototype.open=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(t.length0&&a.update(c.subarray(n.length%16))),a.update(r),r.length%16>0&&a.update(c.subarray(r.length%16));var u=new Uint8Array(8);n&&s.writeUint64LE(n.length,u),a.update(u),s.writeUint64LE(r.length,u),a.update(u);for(var f=a.digest(),l=0;l{"use strict";function r(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=r,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==r(e,t)}},79984:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return void 0!==e.saveState&&void 0!==e.restoreState&&void 0!==e.cleanSavedState}},512:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25629),i=r(17309),o=function(){function e(e,t,r,i){void 0===r&&(r=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=i;var o=n.hmac(this._hash,r,t);this._hmac=new n.HMAC(e,o),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(0===e)throw new Error("hkdf: cannot expand more");this._hmac.reset(),e>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},e.prototype.expand=function(e){for(var t=new Uint8Array(e),r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(79984),i=r(4153),o=r(17309),s=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},63027:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(4153),i=r(17309);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,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,this._finished=!1;var r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var s=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|s<<12),this._r[5]=s>>>1&8190;var a=e[10]|e[11]<<8;this._r[6]=8191&(s>>>14|a<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(a>>>11|c<<5);var u=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|u<<8),this._r[9]=u>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],o=this._h[1],s=this._h[2],a=this._h[3],c=this._h[4],u=this._h[5],f=this._h[6],l=this._h[7],h=this._h[8],d=this._h[9],p=this._r[0],y=this._r[1],g=this._r[2],b=this._r[3],m=this._r[4],v=this._r[5],w=this._r[6],E=this._r[7],_=this._r[8],S=this._r[9];r>=16;){var A=e[t+0]|e[t+1]<<8;i+=8191&A;var T=e[t+2]|e[t+3]<<8;o+=8191&(A>>>13|T<<3);var I=e[t+4]|e[t+5]<<8;s+=8191&(T>>>10|I<<6);var C=e[t+6]|e[t+7]<<8;a+=8191&(I>>>7|C<<9);var P=e[t+8]|e[t+9]<<8;c+=8191&(C>>>4|P<<12),u+=P>>>1&8191;var R=e[t+10]|e[t+11]<<8;f+=8191&(P>>>14|R<<2);var k=e[t+12]|e[t+13]<<8;l+=8191&(R>>>11|k<<5);var B=e[t+14]|e[t+15]<<8,x=0,M=x;M+=i*p,M+=o*(5*S),M+=s*(5*_),M+=a*(5*E),x=(M+=c*(5*w))>>>13,M&=8191,M+=u*(5*v),M+=f*(5*m),M+=l*(5*b),M+=(h+=8191&(k>>>8|B<<8))*(5*g);var O=x+=(M+=(d+=B>>>5|n)*(5*y))>>>13;O+=i*y,O+=o*p,O+=s*(5*S),O+=a*(5*_),x=(O+=c*(5*E))>>>13,O&=8191,O+=u*(5*w),O+=f*(5*v),O+=l*(5*m),O+=h*(5*b),x+=(O+=d*(5*g))>>>13,O&=8191;var N=x;N+=i*g,N+=o*y,N+=s*p,N+=a*(5*S),x=(N+=c*(5*_))>>>13,N&=8191,N+=u*(5*E),N+=f*(5*w),N+=l*(5*v),N+=h*(5*m);var L=x+=(N+=d*(5*b))>>>13;L+=i*b,L+=o*g,L+=s*y,L+=a*p,x=(L+=c*(5*S))>>>13,L&=8191,L+=u*(5*_),L+=f*(5*E),L+=l*(5*w),L+=h*(5*v);var D=x+=(L+=d*(5*m))>>>13;D+=i*m,D+=o*b,D+=s*g,D+=a*y,x=(D+=c*p)>>>13,D&=8191,D+=u*(5*S),D+=f*(5*_),D+=l*(5*E),D+=h*(5*w);var K=x+=(D+=d*(5*v))>>>13;K+=i*v,K+=o*m,K+=s*b,K+=a*g,x=(K+=c*y)>>>13,K&=8191,K+=u*p,K+=f*(5*S),K+=l*(5*_),K+=h*(5*E);var U=x+=(K+=d*(5*w))>>>13;U+=i*w,U+=o*v,U+=s*m,U+=a*b,x=(U+=c*g)>>>13,U&=8191,U+=u*y,U+=f*p,U+=l*(5*S),U+=h*(5*_);var j=x+=(U+=d*(5*E))>>>13;j+=i*E,j+=o*w,j+=s*v,j+=a*m,x=(j+=c*b)>>>13,j&=8191,j+=u*g,j+=f*y,j+=l*p,j+=h*(5*S);var V=x+=(j+=d*(5*_))>>>13;V+=i*_,V+=o*E,V+=s*w,V+=a*v,x=(V+=c*m)>>>13,V&=8191,V+=u*b,V+=f*g,V+=l*y,V+=h*p;var F=x+=(V+=d*(5*S))>>>13;F+=i*S,F+=o*_,F+=s*E,F+=a*w,x=(F+=c*v)>>>13,F&=8191,F+=u*m,F+=f*b,F+=l*g,F+=h*y,i=M=8191&(x=(x=((x+=(F+=d*p)>>>13)<<2)+x|0)+(M&=8191)|0),o=O+=x>>>=13,s=N&=8191,a=L&=8191,c=D&=8191,u=K&=8191,f=U&=8191,l=j&=8191,h=V&=8191,d=F&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=o,this._h[2]=s,this._h[3]=a,this._h[4]=c,this._h[5]=u,this._h[6]=f,this._h[7]=l,this._h[8]=h,this._h[9]=d},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,o,s=new Uint16Array(10);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]+=5*r,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,s[0]=this._h[0]+5,r=s[0]>>>13,s[0]&=8191,o=1;o<10;o++)s[o]=this._h[o]+r,r=s[o]>>>13,s[o]&=8191;for(s[9]-=8192,n=(1^r)-1,o=0;o<10;o++)s[o]&=n;for(n=~n,o=0;o<10;o++)this._h[o]=this._h[o]&n|s[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(46008),i=r(98099),o=r(17309);function s(e,r){return void 0===r&&(r=t.defaultRandomSource),r.randomBytes(e)}t.defaultRandomSource=new n.SystemRandomSource,t.randomBytes=s,t.randomUint32=function(e){void 0===e&&(e=t.defaultRandomSource);var r=s(4,e),n=i.readUint32LE(r);return o.wipe(r),n};var a="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,r,n){if(void 0===r&&(r=a),void 0===n&&(n=t.defaultRandomSource),r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");for(var i="",c=r.length,u=256-256%c;e>0;){for(var f=s(Math.ceil(256*e/u),n),l=0;l0;l++){var h=f[l];h{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");for(var t=new Uint8Array(e),r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(17309),i=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e=r(35883);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");var t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");for(var r=new Uint8Array(e),i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(75455),i=r(58871),o=function(){function e(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)},e}();t.SystemRandomSource=o},73294:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(98099),i=r(17309);t.DIGEST_LENGTH=32,t.BLOCK_SIZE=64;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._temp),this.reset()},e.prototype.update=function(e,t){if(void 0===t&&(t=e.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var r=0;if(this._bytesHashed+=t,this._bufferLength>0){for(;this._bufferLength0;)this._buffer[this._bufferLength++]=e[r++],t--;this._bufferLength===this.blockSize&&(a(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(t>=this.blockSize&&(r=a(this._temp,this._state,e,r,t),t%=this.blockSize);t>0;)this._buffer[this._bufferLength++]=e[r++],t--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,o=t<<3,s=t%64<56?64:128;this._buffer[r]=128;for(var c=r+1;c0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._state.set(e.state),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.state),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA256=o;var s=new Int32Array([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 a(e,t,r,i,o){for(;o>=64;){for(var a=t[0],c=t[1],u=t[2],f=t[3],l=t[4],h=t[5],d=t[6],p=t[7],y=0;y<16;y++){var g=i+4*y;e[y]=n.readUint32BE(r,g)}for(y=16;y<64;y++){var b=e[y-2],m=(b>>>17|b<<15)^(b>>>19|b<<13)^b>>>10,v=((b=e[y-15])>>>7|b<<25)^(b>>>18|b<<14)^b>>>3;e[y]=(m+e[y-7]|0)+(v+e[y-16]|0)}for(y=0;y<64;y++)m=(((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(l&h^~l&d)|0)+(p+(s[y]+e[y]|0)|0)|0,v=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&c^a&u^c&u)|0,p=d,d=h,h=l,l=f+m|0,f=u,u=c,c=a,a=m+v|0;t[0]+=a,t[1]+=c,t[2]+=u,t[3]+=f,t[4]+=l,t[5]+=h,t[6]+=d,t[7]+=p,i+=64,o-=64}return i}t.hash=function(e){var t=new o;t.update(e);var r=t.digest();return t.clean(),r}},17309:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(31416),i=r(17309);function o(e){var t=new Float64Array(16);if(e)for(var r=0;r=0;--m){var v=r[m>>>3]>>>(7&m)&1;u(i,s,v),u(p,y,v),f(g,i,p),l(i,i,p),f(p,s,y),l(s,s,y),d(y,g),d(b,i),h(i,p,i),h(p,s,g),f(g,i,p),l(i,i,p),d(s,i),l(p,y,b),h(i,p,a),f(i,i,y),h(p,p,i),h(i,y,b),h(y,s,n),d(s,g),u(i,s,v),u(p,y,v)}for(m=0;m<16;m++)n[m+16]=i[m],n[m+32]=p[m],n[m+48]=s[m],n[m+64]=y[m];var w=n.subarray(32),E=n.subarray(16);!function(e,t){for(var r=o(),n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)d(r,r),2!==n&&4!==n&&h(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(w,w),h(E,E,w);var _=new Uint8Array(32);return function(e,t){for(var r=o(),n=o(),i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(var s=0;s<2;s++){for(r[0]=n[0]-65517,i=1;i<15;i++)r[i]=n[i]-65535-(r[i-1]>>16&1),r[i-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);var a=r[15]>>16&1;r[14]&=65535,u(n,r,1-a)}for(i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(_,E),_}function y(e){return p(e,s)}function g(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error("x25519: seed must be "+t.SECRET_KEY_LENGTH+" bytes");var r=new Uint8Array(e);return{publicKey:y(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=y,t.generateKeyPairFromSeed=g,t.generateKeyPair=function(e){var t=n.randomBytes(32,e),r=g(t);return i.wipe(t),r},t.sharedKey=function(e,r,n){if(void 0===n&&(n=!1),e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");var i=p(e,r);if(n){for(var o=0,s=0;s{"use strict";const r=Math.exp;e.exports=function(e){if("number"!=typeof e)throw new Error("must provide a timespan to the moving average constructor");if(e<=0)throw new Error("must provide a timespan > 0 to the moving average constructor");let t,n,i=0,o=0,s=0,a={push:function(a,c){if(n){const u=1-r(-(a-n)/e),f=c-t;t=u*c+(1-u)*t,i=(1-u)*(i+f*(u*f)),o=Math.sqrt(i),s=t+u*f}else t=c;n=a},movingAverage:function(){return t},variance:function(){return i},deviation:function(){return o},forecast:function(){return s}};return a}},28599:e=>{"use strict";const{AbortController:t,AbortSignal:r}="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0;e.exports=t,e.exports.AbortSignal=r,e.exports.default=t},42235:e=>{e.exports=class extends Error{constructor(e,t){super(e||"The operation was aborted"),this.type="aborted",this.code=t||"ABORT_ERR"}}},61623:(e,t,r)=>{const n=r(22412),i=r(42235),o=(e,t,r)=>s(e,Array.isArray(t)?t:[{signal:t,options:r}]),s=(e,t)=>(e=n(e),t=t.map((({signal:e,options:t})=>({signal:e,options:t||{}}))),async function*(){let r;const n=()=>{r&&r()};for(const{signal:e}of t)e.addEventListener("abort",n);for(;;){let o;try{for(const{signal:e,options:r}of t)if(e.aborted){const{abortMessage:e,abortCode:t}=r;throw new i(e,t)}const n=new Promise(((e,n)=>{r=()=>{const{options:e}=t.find((({signal:e})=>e.aborted)),{abortMessage:r,abortCode:o}=e;n(new i(r,o))}}));o=await Promise.race([n,e.next()]),r=null}catch(r){for(const{signal:e}of t)e.removeEventListener("abort",n);const i=t.find((({signal:e})=>e.aborted)),o="aborted"===r.type&&i;if(o&&i.options.onAbort&&await i.options.onAbort(e),"function"==typeof e.return)try{const t=e.return();t instanceof Promise&&t.catch((e=>{null!=i.options.onReturnError&&i.options.onReturnError(e)}))}catch(e){null!=i.options.onReturnError&&i.options.onReturnError(e)}if(o&&i.options.returnOnAbort)return;throw r}if(o.done)break;yield o.value}for(const{signal:e}of t)e.removeEventListener("abort",n)}()),a=(e,t,r)=>c(e,Array.isArray(t)?t:[{signal:t,options:r}]),c=(e,t)=>r=>e(s(r,t));e.exports=o,e.exports.AbortError=i,e.exports.source=o,e.exports.sink=a,e.exports.transform=a,e.exports.duplex=(e,t,r)=>((e,t)=>({sink:c(e.sink,t),source:s(e.source,t)}))(e,Array.isArray(t)?t:[{signal:t,options:r}])},56455:(e,t,r)=>{"use strict";const n=r(95602),i=r(75281);class o extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError("Expected input to be an Array, got "+typeof e);let t=(e=[...e].map((e=>e instanceof Error?e:null!==e&&"object"==typeof e?Object.assign(new Error(e.message),e):new Error(e)))).map((e=>"string"==typeof e.stack?i(e.stack).replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g,""):String(e))).join("\n");t="\n"+n(t,4),super(t),this.name="AggregateError",Object.defineProperty(this,"_errors",{value:e})}*[Symbol.iterator](){for(const e of this._errors)yield e}}e.exports=o},32044:(e,t,r)=>{const{AbortController:n}=r(35353);function i(e){const t=new n;function r(){t.abort();for(const t of e)t&&t.removeEventListener&&t.removeEventListener("abort",r)}for(const t of e)if(t&&t.addEventListener){if(t.aborted){r();break}t.addEventListener("abort",r)}return t.signal}e.exports=i,e.exports.anySignal=i},58162:(e,t,r)=>{"use strict";var n=r(89509).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,f=new Uint8Array(s);e[r];){var l=t[e.charCodeAt(r)];if(255===l)return;for(var h=0,d=s-1;(0!==l||h>>0,f[d]=l%256>>>0,l=l/256>>>0;if(0!==l)throw new Error("Non-zero carry");o=h,r++}for(var p=s-o;p!==s&&0===f[p];)p++;var y=n.allocUnsafe(i+(s-p));y.fill(0,0,i);for(var g=i;p!==s;)y[g++]=f[p++];return y}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,i=0,o=0,s=t.length;o!==s&&0===t[o];)o++,r++;for(var u=(s-o)*f+1>>>0,l=new Uint8Array(u);o!==s;){for(var h=t[o],d=0,p=u-1;(0!==h||d>>0,l[p]=h%a>>>0,h=h/a>>>0;if(0!==h)throw new Error("Non-zero carry");i=d,o++}for(var y=u-i;y!==u&&0===l[y];)y++;for(var g=c.repeat(r);y{"use strict";t.byteLength=function(e){var t=c(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,o=c(e),s=o[0],a=o[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,s,a)),f=0,l=a>0?s-4:s;for(r=0;r>16&255,u[f++]=t>>8&255,u[f++]=255&t;return 2===a&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[f++]=255&t),1===a&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[f++]=t>>8&255,u[f++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],s=16383,a=0,c=n-i;ac?c:a+s));return 1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),o.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,a=o.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function u(e,t,n){for(var i,o,s=[],a=t;a>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return s.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},44431:function(e,t,r){var n;!function(i){"use strict";var o,s=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,a=Math.ceil,c=Math.floor,u="[BigNumber Error] ",f=u+"Number primitive has more than 15 significant digits: ",l=1e14,h=14,d=9007199254740991,p=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],y=1e7,g=1e9;function b(e){var t=0|e;return e>0||e===t?t:t-1}function m(e){for(var t,r,n=1,i=e.length,o=e[0]+"";nu^r?1:-1;for(a=(c=i.length)<(u=o.length)?c:u,s=0;so[s]^r?1:-1;return c==u?0:c>u^r?1:-1}function w(e,t,r,n){if(er||e!==c(e))throw Error(u+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function E(e){var t=e.c.length-1;return b(e.e/h)==t&&e.c[t]%2!=0}function _(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function S(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else tD?b.c=b.e=null:e.e=10;l/=10,u++);return void(u>D?b.c=b.e=null:(b.e=u,b.c=[e]))}g=String(e)}else{if(!s.test(g=String(e)))return i(b,g,p);b.s=45==g.charCodeAt(0)?(g=g.slice(1),-1):1}(u=g.indexOf("."))>-1&&(g=g.replace(".","")),(l=g.search(/e/i))>0?(u<0&&(u=l),u+=+g.slice(l+1),g=g.substring(0,l)):u<0&&(u=g.length)}else{if(w(t,2,F.length,"Base"),10==t&&q)return W(b=new H(e),x+b.e+1,M);if(g=String(e),p="number"==typeof e){if(0*e!=0)return i(b,g,p,t);if(b.s=1/e<0?(g=g.slice(1),-1):1,H.DEBUG&&g.replace(/^0\.0*|\./,"").length>15)throw Error(f+e)}else b.s=45===g.charCodeAt(0)?(g=g.slice(1),-1):1;for(r=F.slice(0,t),u=l=0,y=g.length;lu){u=y;continue}}else if(!a&&(g==g.toUpperCase()&&(g=g.toLowerCase())||g==g.toLowerCase()&&(g=g.toUpperCase()))){a=!0,l=-1,u=0;continue}return i(b,String(e),p,t)}p=!1,(u=(g=n(g,t,10,b.s)).indexOf("."))>-1?g=g.replace(".",""):u=g.length}for(l=0;48===g.charCodeAt(l);l++);for(y=g.length;48===g.charCodeAt(--y););if(g=g.slice(l,++y)){if(y-=l,p&&H.DEBUG&&y>15&&(e>d||e!==c(e)))throw Error(f+b.s*e);if((u=u-l-1)>D)b.c=b.e=null;else if(u=N)?_(c,s):S(c,s,"0");else if(o=(e=W(new H(e),t,r)).e,a=(c=m(e.c)).length,1==n||2==n&&(t<=o||o<=O)){for(;aa){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=o-a)>0)for(o+1==a&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function $(e,t){for(var r,n=1,i=new H(e[0]);n=10;i/=10,n++);return(r=n+r*h-1)>D?e.c=e.e=null:r=10;u/=10,i++);if((o=t-i)<0)o+=h,s=t,y=(f=g[d=0])/b[i-s-1]%10|0;else if((d=a((o+1)/h))>=g.length){if(!n)break e;for(;g.length<=d;g.push(0));f=y=0,i=1,s=(o%=h)-h+1}else{for(f=u=g[d],i=1;u>=10;u/=10,i++);y=(s=(o%=h)-h+i)<0?0:f/b[i-s-1]%10|0}if(n=n||t<0||null!=g[d+1]||(s<0?f:f%b[i-s-1]),n=r<4?(y||n)&&(0==r||r==(e.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(o>0?s>0?f/b[i-s]:0:g[d-1])%10&1||r==(e.s<0?8:7)),t<1||!g[0])return g.length=0,n?(t-=e.e+1,g[0]=b[(h-t%h)%h],e.e=-t||0):g[0]=e.e=0,e;if(0==o?(g.length=d,u=1,d--):(g.length=d+1,u=b[h-o],g[d]=s>0?c(f/b[i-s]%b[s])*u:0),n)for(;;){if(0==d){for(o=1,s=g[0];s>=10;s/=10,o++);for(s=g[0]+=u,u=1;s>=10;s/=10,u++);o!=u&&(e.e++,g[0]==l&&(g[0]=1));break}if(g[d]+=u,g[d]!=l)break;g[d--]=0,u=1}for(o=g.length;0===g[--o];g.pop());}e.e>D?e.c=e.e=null:e.e=N?_(t,r):S(t,r,"0"),e.s<0?"-"+t:t)}return H.clone=e,H.ROUND_UP=0,H.ROUND_DOWN=1,H.ROUND_CEIL=2,H.ROUND_FLOOR=3,H.ROUND_HALF_UP=4,H.ROUND_HALF_DOWN=5,H.ROUND_HALF_EVEN=6,H.ROUND_HALF_CEIL=7,H.ROUND_HALF_FLOOR=8,H.EUCLID=9,H.config=H.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(u+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(w(r=e[t],0,g,t),x=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(w(r=e[t],0,8,t),M=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(w(r[0],-g,0,t),w(r[1],0,g,t),O=r[0],N=r[1]):(w(r,-g,g,t),O=-(N=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)w(r[0],-g,-1,t),w(r[1],1,g,t),L=r[0],D=r[1];else{if(w(r,-g,g,t),!r)throw Error(u+t+" cannot be zero: "+r);L=-(D=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(u+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw K=!r,Error(u+"crypto unavailable");K=r}else K=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(w(r=e[t],0,9,t),U=r),e.hasOwnProperty(t="POW_PRECISION")&&(w(r=e[t],0,g,t),j=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(u+t+" not an object: "+r);V=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(u+t+" invalid: "+r);q="0123456789"==r.slice(0,10),F=r}}return{DECIMAL_PLACES:x,ROUNDING_MODE:M,EXPONENTIAL_AT:[O,N],RANGE:[L,D],CRYPTO:K,MODULO_MODE:U,POW_PRECISION:j,FORMAT:V,ALPHABET:F}},H.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!H.DEBUG)return!0;var t,r,n=e.c,i=e.e,o=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-g&&i<=g&&i===c(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%h)<1&&(t+=h),String(n[0]).length==t){for(t=0;t=l||r!==c(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(u+"Invalid BigNumber: "+e)},H.maximum=H.max=function(){return $(arguments,k.lt)},H.minimum=H.min=function(){return $(arguments,k.gt)},H.random=(o=9007199254740992,A=Math.random()*o&2097151?function(){return c(Math.random()*o)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,r,n,i,o,s=0,f=[],l=new H(B);if(null==e?e=x:w(e,0,g),i=a(e/h),K)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(i*=2));s>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),t[s]=r[0],t[s+1]=r[1]):(f.push(o%1e14),s+=2);s=i/2}else{if(!crypto.randomBytes)throw K=!1,Error(u+"crypto unavailable");for(t=crypto.randomBytes(i*=7);s=9e15?crypto.randomBytes(7).copy(t,s):(f.push(o%1e14),s+=7);s=i/7}if(!K)for(;s=10;o/=10,s++);sr-1&&(null==s[i+1]&&(s[i+1]=0),s[i+1]+=s[i]/r|0,s[i]%=r)}return s.reverse()}return function(n,i,o,s,a){var c,u,f,l,h,d,p,y,g=n.indexOf("."),b=x,v=M;for(g>=0&&(l=j,j=0,n=n.replace(".",""),d=(y=new H(i)).pow(n.length-g),j=l,y.c=t(S(m(d.c),d.e,"0"),10,o,e),y.e=y.c.length),f=l=(p=t(n,i,o,a?(c=F,e):(c=e,F))).length;0==p[--l];p.pop());if(!p[0])return c.charAt(0);if(g<0?--f:(d.c=p,d.e=f,d.s=s,p=(d=r(d,y,b,v,o)).c,h=d.r,f=d.e),g=p[u=f+b+1],l=o/2,h=h||u<0||null!=p[u+1],h=v<4?(null!=g||h)&&(0==v||v==(d.s<0?3:2)):g>l||g==l&&(4==v||h||6==v&&1&p[u-1]||v==(d.s<0?8:7)),u<1||!p[0])n=h?S(c.charAt(1),-b,c.charAt(0)):c.charAt(0);else{if(p.length=u,h)for(--o;++p[--u]>o;)p[u]=0,u||(++f,p=[1].concat(p));for(l=p.length;!p[--l];);for(g=0,n="";g<=l;n+=c.charAt(p[g++]));n=S(n,f,c.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,o,s,a=0,c=e.length,u=t%y,f=t/y|0;for(e=e.slice();c--;)a=((i=u*(o=e[c]%y)+(n=f*o+(s=e[c]/y|0)*u)%y*y+a)/r|0)+(n/y|0)+f*s,e[c]=i%r;return a&&(e=[a].concat(e)),e}function t(e,t,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;it[i]?1:-1;break}return o}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,o,s,a){var u,f,d,p,y,g,m,v,w,E,_,S,A,T,I,C,P,R=n.s==i.s?1:-1,k=n.c,B=i.c;if(!(k&&k[0]&&B&&B[0]))return new H(n.s&&i.s&&(k?!B||k[0]!=B[0]:B)?k&&0==k[0]||!B?0*R:R/0:NaN);for(w=(v=new H(R)).c=[],R=o+(f=n.e-i.e)+1,a||(a=l,f=b(n.e/h)-b(i.e/h),R=R/h|0),d=0;B[d]==(k[d]||0);d++);if(B[d]>(k[d]||0)&&f--,R<0)w.push(1),p=!0;else{for(T=k.length,C=B.length,d=0,R+=2,(y=c(a/(B[0]+1)))>1&&(B=e(B,y,a),k=e(k,y,a),C=B.length,T=k.length),A=C,_=(E=k.slice(0,C)).length;_=a/2&&I++;do{if(y=0,(u=t(B,E,C,_))<0){if(S=E[0],C!=_&&(S=S*a+(E[1]||0)),(y=c(S/I))>1)for(y>=a&&(y=a-1),m=(g=e(B,y,a)).length,_=E.length;1==t(g,E,m,_);)y--,r(g,C=10;R/=10,d++);W(v,o+(v.e=d+f*h-1)+1,s,p)}else v.e=f,v.r=+p;return v}}(),T=/^(-?)0([xbo])(?=\w[\w.]*$)/i,I=/^([^.]+)\.$/,C=/^\.([^.]+)$/,P=/^-?(Infinity|NaN)$/,R=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,r,n){var i,o=r?t:t.replace(R,"");if(P.test(o))e.s=isNaN(o)?null:o<0?-1:1;else{if(!r&&(o=o.replace(T,(function(e,t,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?e:t})),n&&(i=n,o=o.replace(I,"$1").replace(C,"0.$1")),t!=o))return new H(o,i);if(H.DEBUG)throw Error(u+"Not a"+(n?" base "+n:"")+" number: "+t);e.s=null}e.c=e.e=null},k.absoluteValue=k.abs=function(){var e=new H(this);return e.s<0&&(e.s=1),e},k.comparedTo=function(e,t){return v(this,new H(e,t))},k.decimalPlaces=k.dp=function(e,t){var r,n,i,o=this;if(null!=e)return w(e,0,g),null==t?t=M:w(t,0,8),W(new H(o),e+o.e+1,t);if(!(r=o.c))return null;if(n=((i=r.length-1)-b(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},k.dividedBy=k.div=function(e,t){return r(this,new H(e,t),x,M)},k.dividedToIntegerBy=k.idiv=function(e,t){return r(this,new H(e,t),0,1)},k.exponentiatedBy=k.pow=function(e,t){var r,n,i,o,s,f,l,d,p=this;if((e=new H(e)).c&&!e.isInteger())throw Error(u+"Exponent not an integer: "+Y(e));if(null!=t&&(t=new H(t)),s=e.e>14,!p.c||!p.c[0]||1==p.c[0]&&!p.e&&1==p.c.length||!e.c||!e.c[0])return d=new H(Math.pow(+Y(p),s?2-E(e):+Y(e))),t?d.mod(t):d;if(f=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new H(NaN);(n=!f&&p.isInteger()&&t.isInteger())&&(p=p.mod(t))}else{if(e.e>9&&(p.e>0||p.e<-1||(0==p.e?p.c[0]>1||s&&p.c[1]>=24e7:p.c[0]<8e13||s&&p.c[0]<=9999975e7)))return o=p.s<0&&E(e)?-0:0,p.e>-1&&(o=1/o),new H(f?1/o:o);j&&(o=a(j/h+2))}for(s?(r=new H(.5),f&&(e.s=1),l=E(e)):l=(i=Math.abs(+Y(e)))%2,d=new H(B);;){if(l){if(!(d=d.times(p)).c)break;o?d.c.length>o&&(d.c.length=o):n&&(d=d.mod(t))}if(i){if(0===(i=c(i/2)))break;l=i%2}else if(W(e=e.times(r),e.e+1,1),e.e>14)l=E(e);else{if(0==(i=+Y(e)))break;l=i%2}p=p.times(p),o?p.c&&p.c.length>o&&(p.c.length=o):n&&(p=p.mod(t))}return n?d:(f&&(d=B.div(d)),t?d.mod(t):o?W(d,j,M,void 0):d)},k.integerValue=function(e){var t=new H(this);return null==e?e=M:w(e,0,8),W(t,t.e+1,e)},k.isEqualTo=k.eq=function(e,t){return 0===v(this,new H(e,t))},k.isFinite=function(){return!!this.c},k.isGreaterThan=k.gt=function(e,t){return v(this,new H(e,t))>0},k.isGreaterThanOrEqualTo=k.gte=function(e,t){return 1===(t=v(this,new H(e,t)))||0===t},k.isInteger=function(){return!!this.c&&b(this.e/h)>this.c.length-2},k.isLessThan=k.lt=function(e,t){return v(this,new H(e,t))<0},k.isLessThanOrEqualTo=k.lte=function(e,t){return-1===(t=v(this,new H(e,t)))||0===t},k.isNaN=function(){return!this.s},k.isNegative=function(){return this.s<0},k.isPositive=function(){return this.s>0},k.isZero=function(){return!!this.c&&0==this.c[0]},k.minus=function(e,t){var r,n,i,o,s=this,a=s.s;if(t=(e=new H(e,t)).s,!a||!t)return new H(NaN);if(a!=t)return e.s=-t,s.plus(e);var c=s.e/h,u=e.e/h,f=s.c,d=e.c;if(!c||!u){if(!f||!d)return f?(e.s=-t,e):new H(d?s:NaN);if(!f[0]||!d[0])return d[0]?(e.s=-t,e):new H(f[0]?s:3==M?-0:0)}if(c=b(c),u=b(u),f=f.slice(),a=c-u){for((o=a<0)?(a=-a,i=f):(u=c,i=d),i.reverse(),t=a;t--;i.push(0));i.reverse()}else for(n=(o=(a=f.length)<(t=d.length))?a:t,a=t=0;t0)for(;t--;f[r++]=0);for(t=l-1;n>a;){if(f[--n]=0;){for(r=0,p=S[i]%w,g=S[i]/w|0,o=i+(s=c);o>i;)r=((u=p*(u=_[--s]%w)+(a=g*u+(f=_[s]/w|0)*p)%w*w+m[o]+r)/v|0)+(a/w|0)+g*f,m[o--]=u%v;m[o]=r}return r?++n:m.splice(0,1),G(e,m,n)},k.negated=function(){var e=new H(this);return e.s=-e.s||null,e},k.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new H(e,t)).s,!i||!t)return new H(NaN);if(i!=t)return e.s=-t,n.minus(e);var o=n.e/h,s=e.e/h,a=n.c,c=e.c;if(!o||!s){if(!a||!c)return new H(i/0);if(!a[0]||!c[0])return c[0]?e:new H(a[0]?n:0*i)}if(o=b(o),s=b(s),a=a.slice(),i=o-s){for(i>0?(s=o,r=c):(i=-i,r=a),r.reverse();i--;r.push(0));r.reverse()}for((i=a.length)-(t=c.length)<0&&(r=c,c=a,a=r,t=i),i=0;t;)i=(a[--t]=a[t]+c[t]+i)/l|0,a[t]=l===a[t]?0:a[t]%l;return i&&(a=[i].concat(a),++s),G(e,a,s)},k.precision=k.sd=function(e,t){var r,n,i,o=this;if(null!=e&&e!==!!e)return w(e,1,g),null==t?t=M:w(t,0,8),W(new H(o),e,t);if(!(r=o.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&o.e+1>n&&(n=o.e+1),n},k.shiftedBy=function(e){return w(e,-9007199254740991,d),this.times("1e"+e)},k.squareRoot=k.sqrt=function(){var e,t,n,i,o,s=this,a=s.c,c=s.s,u=s.e,f=x+4,l=new H("0.5");if(1!==c||!a||!a[0])return new H(!c||c<0&&(!a||a[0])?NaN:a?s:1/0);if(0==(c=Math.sqrt(+Y(s)))||c==1/0?(((t=m(a)).length+u)%2==0&&(t+="0"),c=Math.sqrt(+t),u=b((u+1)/2)-(u<0||u%2),n=new H(t=c==1/0?"5e"+u:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+u)):n=new H(c+""),n.c[0])for((c=(u=n.e)+f)<3&&(c=0);;)if(o=n,n=l.times(o.plus(r(s,o,f,1))),m(o.c).slice(0,c)===(t=m(n.c)).slice(0,c)){if(n.e0&&y>0){for(o=y%a||a,l=p.substr(0,o);o0&&(l+=f+p.slice(o)),d&&(l="-"+l)}n=h?l+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):l}return(r.prefix||"")+n+(r.suffix||"")},k.toFraction=function(e){var t,n,i,o,s,a,c,f,l,d,y,g,b=this,v=b.c;if(null!=e&&(!(c=new H(e)).isInteger()&&(c.c||1!==c.s)||c.lt(B)))throw Error(u+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+Y(c));if(!v)return new H(b);for(t=new H(B),l=n=new H(B),i=f=new H(B),g=m(v),s=t.e=g.length-b.e-1,t.c[0]=p[(a=s%h)<0?h+a:a],e=!e||c.comparedTo(t)>0?s>0?t:l:c,a=D,D=1/0,c=new H(g),f.c[0]=0;d=r(c,t,0,1),1!=(o=n.plus(d.times(i))).comparedTo(e);)n=i,i=o,l=f.plus(d.times(o=l)),f=o,t=c.minus(d.times(o=t)),c=o;return o=r(e.minus(n),i,0,1),f=f.plus(o.times(l)),n=n.plus(o.times(i)),f.s=l.s=b.s,y=r(l,i,s*=2,M).minus(b).abs().comparedTo(r(f,n,s,M).minus(b).abs())<1?[l,i]:[f,n],D=a,y},k.toNumber=function(){return+Y(this)},k.toPrecision=function(e,t){return null!=e&&w(e,1,g),z(this,e,t,2)},k.toString=function(e){var t,r=this,i=r.s,o=r.e;return null===o?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=o<=O||o>=N?_(m(r.c),o):S(m(r.c),o,"0"):10===e&&q?t=S(m((r=W(new H(r),x+o+1,M)).c),r.e,"0"):(w(e,2,F.length,"Base"),t=n(S(m(r.c),o,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},k.valueOf=k.toJSON=function(){return Y(this)},k._isBigNumber=!0,null!=t&&H.set(t),H}(),o.default=o.BigNumber=o,void 0===(n=function(){return o}.call(t,r,t,e))||(e.exports=n)}()},9668:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=Symbol.for("BufferList");function o(e){if(!(this instanceof o))return new o(e);o._init.call(this,e)}o._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},o.prototype._new=function(e){return new o(e)},o.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;rthis.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},o.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},o.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const o=!!e,s=this._offset(r),a=i-r;let c=a,u=o&&t||0,f=s[1];if(0===r&&i===this.length){if(!o)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;tr)){this._bufs[t].copy(e,u,f,f+c),u+=r;break}this._bufs[t].copy(e,u,f),u+=r,c-=r,f&&(f=0)}return e.length>u?e.slice(0,u):e},o.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},o.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},o.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},o.prototype.duplicate=function(){const e=this._new();for(let t=0;tthis.length?this.length:t;const i=this._offset(t);let o=i[0],s=i[1];for(;o=e.length){const r=t.indexOf(e,s);if(-1!==r)return this._reverseOffset([o,r]);s=t.length-e.length+1}else{const t=this._reverseOffset([o,s]);if(this._match(t,e))return t;s++}s=0}return-1},o.prototype._match=function(e,t){if(this.length-e=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function c(e,t,r){var n=a(e,r);return r-1>=t&&(n|=a(e,r-1)<<4),n}function u(e,t,r,n){for(var i=0,o=Math.min(e.length,r),s=t;s=49?a-49+10:a>=17?a-17+10:a}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"==typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"==typeof e)return this._initNumber(e,t,r);if("object"==typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)s=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=s<>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-a&67108863,(a+=24)>=26&&(a-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,s+=1,this.words[s]|=i>>>26):o+=8;else for(n=(e.length-t)%2==0?t+1:t;n=18?(o-=18,s+=1,this.words[s]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,s=o%n,a=Math.min(o,o-s)+r,c=0,f=r;f1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var f=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function d(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],s=i*o,a=67108863&s,c=s/67108864|0;r.words[0]=a;for(var u=1;u>>26,l=67108863&c,h=Math.min(u,t.length-1),d=Math.max(0,u-e.length+1);d<=h;d++){var p=u-d|0;f+=(s=(i=0|e.words[p])*(o=0|t.words[d])+l)/67108864|0,l=67108863&s}r.words[u]=0|l,c=0|f}return 0!==c?r.words[u]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,s=0;s>>24-i&16777215)||s!==this.length-1?f[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,s--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var u=l[e],d=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var y=p.modn(d).toString(e);r=(p=p.idivn(d)).isZero()?y+r:f[u-y.length]+y+r}for(this.isZero()&&(r="0"+r);r.length%t!=0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return n(void 0!==s),this.toArrayLike(s,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0"),this.strip();var s,a,c="le"===t,u=new e(o),f=this.clone();if(c){for(a=0;!f.isZero();a++)s=f.andln(255),f.iushrn(8),u[a]=s;for(;a=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0==(8191&t)&&(r+=13,t>>>=13),0==(127&t)&&(r+=7,t>>>=7),0==(15&t)&&(r+=4,t>>>=4),0==(3&t)&&(r+=2,t>>>=2),0==(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"==typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"==typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,s=0;s>26,this.words[s]=67108863&t;for(;0!==o&&s>26,this.words[s]=67108863&t;if(0===o&&s>>13,d=0|s[1],p=8191&d,y=d>>>13,g=0|s[2],b=8191&g,m=g>>>13,v=0|s[3],w=8191&v,E=v>>>13,_=0|s[4],S=8191&_,A=_>>>13,T=0|s[5],I=8191&T,C=T>>>13,P=0|s[6],R=8191&P,k=P>>>13,B=0|s[7],x=8191&B,M=B>>>13,O=0|s[8],N=8191&O,L=O>>>13,D=0|s[9],K=8191&D,U=D>>>13,j=0|a[0],V=8191&j,F=j>>>13,q=0|a[1],H=8191&q,z=q>>>13,$=0|a[2],G=8191&$,W=$>>>13,Y=0|a[3],X=8191&Y,Q=Y>>>13,J=0|a[4],Z=8191&J,ee=J>>>13,te=0|a[5],re=8191&te,ne=te>>>13,ie=0|a[6],oe=8191&ie,se=ie>>>13,ae=0|a[7],ce=8191&ae,ue=ae>>>13,fe=0|a[8],le=8191&fe,he=fe>>>13,de=0|a[9],pe=8191&de,ye=de>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(u+(n=Math.imul(l,V))|0)+((8191&(i=(i=Math.imul(l,F))+Math.imul(h,V)|0))<<13)|0;u=((o=Math.imul(h,F))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,V),i=(i=Math.imul(p,F))+Math.imul(y,V)|0,o=Math.imul(y,F);var be=(u+(n=n+Math.imul(l,H)|0)|0)+((8191&(i=(i=i+Math.imul(l,z)|0)+Math.imul(h,H)|0))<<13)|0;u=((o=o+Math.imul(h,z)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(b,V),i=(i=Math.imul(b,F))+Math.imul(m,V)|0,o=Math.imul(m,F),n=n+Math.imul(p,H)|0,i=(i=i+Math.imul(p,z)|0)+Math.imul(y,H)|0,o=o+Math.imul(y,z)|0;var me=(u+(n=n+Math.imul(l,G)|0)|0)+((8191&(i=(i=i+Math.imul(l,W)|0)+Math.imul(h,G)|0))<<13)|0;u=((o=o+Math.imul(h,W)|0)+(i>>>13)|0)+(me>>>26)|0,me&=67108863,n=Math.imul(w,V),i=(i=Math.imul(w,F))+Math.imul(E,V)|0,o=Math.imul(E,F),n=n+Math.imul(b,H)|0,i=(i=i+Math.imul(b,z)|0)+Math.imul(m,H)|0,o=o+Math.imul(m,z)|0,n=n+Math.imul(p,G)|0,i=(i=i+Math.imul(p,W)|0)+Math.imul(y,G)|0,o=o+Math.imul(y,W)|0;var ve=(u+(n=n+Math.imul(l,X)|0)|0)+((8191&(i=(i=i+Math.imul(l,Q)|0)+Math.imul(h,X)|0))<<13)|0;u=((o=o+Math.imul(h,Q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(S,V),i=(i=Math.imul(S,F))+Math.imul(A,V)|0,o=Math.imul(A,F),n=n+Math.imul(w,H)|0,i=(i=i+Math.imul(w,z)|0)+Math.imul(E,H)|0,o=o+Math.imul(E,z)|0,n=n+Math.imul(b,G)|0,i=(i=i+Math.imul(b,W)|0)+Math.imul(m,G)|0,o=o+Math.imul(m,W)|0,n=n+Math.imul(p,X)|0,i=(i=i+Math.imul(p,Q)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Q)|0;var we=(u+(n=n+Math.imul(l,Z)|0)|0)+((8191&(i=(i=i+Math.imul(l,ee)|0)+Math.imul(h,Z)|0))<<13)|0;u=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(I,V),i=(i=Math.imul(I,F))+Math.imul(C,V)|0,o=Math.imul(C,F),n=n+Math.imul(S,H)|0,i=(i=i+Math.imul(S,z)|0)+Math.imul(A,H)|0,o=o+Math.imul(A,z)|0,n=n+Math.imul(w,G)|0,i=(i=i+Math.imul(w,W)|0)+Math.imul(E,G)|0,o=o+Math.imul(E,W)|0,n=n+Math.imul(b,X)|0,i=(i=i+Math.imul(b,Q)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Q)|0,n=n+Math.imul(p,Z)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(y,Z)|0,o=o+Math.imul(y,ee)|0;var Ee=(u+(n=n+Math.imul(l,re)|0)|0)+((8191&(i=(i=i+Math.imul(l,ne)|0)+Math.imul(h,re)|0))<<13)|0;u=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(R,V),i=(i=Math.imul(R,F))+Math.imul(k,V)|0,o=Math.imul(k,F),n=n+Math.imul(I,H)|0,i=(i=i+Math.imul(I,z)|0)+Math.imul(C,H)|0,o=o+Math.imul(C,z)|0,n=n+Math.imul(S,G)|0,i=(i=i+Math.imul(S,W)|0)+Math.imul(A,G)|0,o=o+Math.imul(A,W)|0,n=n+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Q)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Q)|0,n=n+Math.imul(b,Z)|0,i=(i=i+Math.imul(b,ee)|0)+Math.imul(m,Z)|0,o=o+Math.imul(m,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0;var _e=(u+(n=n+Math.imul(l,oe)|0)|0)+((8191&(i=(i=i+Math.imul(l,se)|0)+Math.imul(h,oe)|0))<<13)|0;u=((o=o+Math.imul(h,se)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(x,V),i=(i=Math.imul(x,F))+Math.imul(M,V)|0,o=Math.imul(M,F),n=n+Math.imul(R,H)|0,i=(i=i+Math.imul(R,z)|0)+Math.imul(k,H)|0,o=o+Math.imul(k,z)|0,n=n+Math.imul(I,G)|0,i=(i=i+Math.imul(I,W)|0)+Math.imul(C,G)|0,o=o+Math.imul(C,W)|0,n=n+Math.imul(S,X)|0,i=(i=i+Math.imul(S,Q)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,Q)|0,n=n+Math.imul(w,Z)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(E,Z)|0,o=o+Math.imul(E,ee)|0,n=n+Math.imul(b,re)|0,i=(i=i+Math.imul(b,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,se)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,se)|0;var Se=(u+(n=n+Math.imul(l,ce)|0)|0)+((8191&(i=(i=i+Math.imul(l,ue)|0)+Math.imul(h,ce)|0))<<13)|0;u=((o=o+Math.imul(h,ue)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(N,V),i=(i=Math.imul(N,F))+Math.imul(L,V)|0,o=Math.imul(L,F),n=n+Math.imul(x,H)|0,i=(i=i+Math.imul(x,z)|0)+Math.imul(M,H)|0,o=o+Math.imul(M,z)|0,n=n+Math.imul(R,G)|0,i=(i=i+Math.imul(R,W)|0)+Math.imul(k,G)|0,o=o+Math.imul(k,W)|0,n=n+Math.imul(I,X)|0,i=(i=i+Math.imul(I,Q)|0)+Math.imul(C,X)|0,o=o+Math.imul(C,Q)|0,n=n+Math.imul(S,Z)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(A,Z)|0,o=o+Math.imul(A,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(E,re)|0,o=o+Math.imul(E,ne)|0,n=n+Math.imul(b,oe)|0,i=(i=i+Math.imul(b,se)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,se)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,ue)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,ue)|0;var Ae=(u+(n=n+Math.imul(l,le)|0)|0)+((8191&(i=(i=i+Math.imul(l,he)|0)+Math.imul(h,le)|0))<<13)|0;u=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(K,V),i=(i=Math.imul(K,F))+Math.imul(U,V)|0,o=Math.imul(U,F),n=n+Math.imul(N,H)|0,i=(i=i+Math.imul(N,z)|0)+Math.imul(L,H)|0,o=o+Math.imul(L,z)|0,n=n+Math.imul(x,G)|0,i=(i=i+Math.imul(x,W)|0)+Math.imul(M,G)|0,o=o+Math.imul(M,W)|0,n=n+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Q)|0)+Math.imul(k,X)|0,o=o+Math.imul(k,Q)|0,n=n+Math.imul(I,Z)|0,i=(i=i+Math.imul(I,ee)|0)+Math.imul(C,Z)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(S,re)|0,i=(i=i+Math.imul(S,ne)|0)+Math.imul(A,re)|0,o=o+Math.imul(A,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,se)|0)+Math.imul(E,oe)|0,o=o+Math.imul(E,se)|0,n=n+Math.imul(b,ce)|0,i=(i=i+Math.imul(b,ue)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,ue)|0,n=n+Math.imul(p,le)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(y,le)|0,o=o+Math.imul(y,he)|0;var Te=(u+(n=n+Math.imul(l,pe)|0)|0)+((8191&(i=(i=i+Math.imul(l,ye)|0)+Math.imul(h,pe)|0))<<13)|0;u=((o=o+Math.imul(h,ye)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(K,H),i=(i=Math.imul(K,z))+Math.imul(U,H)|0,o=Math.imul(U,z),n=n+Math.imul(N,G)|0,i=(i=i+Math.imul(N,W)|0)+Math.imul(L,G)|0,o=o+Math.imul(L,W)|0,n=n+Math.imul(x,X)|0,i=(i=i+Math.imul(x,Q)|0)+Math.imul(M,X)|0,o=o+Math.imul(M,Q)|0,n=n+Math.imul(R,Z)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(k,Z)|0,o=o+Math.imul(k,ee)|0,n=n+Math.imul(I,re)|0,i=(i=i+Math.imul(I,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(S,oe)|0,i=(i=i+Math.imul(S,se)|0)+Math.imul(A,oe)|0,o=o+Math.imul(A,se)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,ue)|0)+Math.imul(E,ce)|0,o=o+Math.imul(E,ue)|0,n=n+Math.imul(b,le)|0,i=(i=i+Math.imul(b,he)|0)+Math.imul(m,le)|0,o=o+Math.imul(m,he)|0;var Ie=(u+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,ye)|0)+Math.imul(y,pe)|0))<<13)|0;u=((o=o+Math.imul(y,ye)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863,n=Math.imul(K,G),i=(i=Math.imul(K,W))+Math.imul(U,G)|0,o=Math.imul(U,W),n=n+Math.imul(N,X)|0,i=(i=i+Math.imul(N,Q)|0)+Math.imul(L,X)|0,o=o+Math.imul(L,Q)|0,n=n+Math.imul(x,Z)|0,i=(i=i+Math.imul(x,ee)|0)+Math.imul(M,Z)|0,o=o+Math.imul(M,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ne)|0,n=n+Math.imul(I,oe)|0,i=(i=i+Math.imul(I,se)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,se)|0,n=n+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,ue)|0)+Math.imul(A,ce)|0,o=o+Math.imul(A,ue)|0,n=n+Math.imul(w,le)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(E,le)|0,o=o+Math.imul(E,he)|0;var Ce=(u+(n=n+Math.imul(b,pe)|0)|0)+((8191&(i=(i=i+Math.imul(b,ye)|0)+Math.imul(m,pe)|0))<<13)|0;u=((o=o+Math.imul(m,ye)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(K,X),i=(i=Math.imul(K,Q))+Math.imul(U,X)|0,o=Math.imul(U,Q),n=n+Math.imul(N,Z)|0,i=(i=i+Math.imul(N,ee)|0)+Math.imul(L,Z)|0,o=o+Math.imul(L,ee)|0,n=n+Math.imul(x,re)|0,i=(i=i+Math.imul(x,ne)|0)+Math.imul(M,re)|0,o=o+Math.imul(M,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,se)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,se)|0,n=n+Math.imul(I,ce)|0,i=(i=i+Math.imul(I,ue)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,ue)|0,n=n+Math.imul(S,le)|0,i=(i=i+Math.imul(S,he)|0)+Math.imul(A,le)|0,o=o+Math.imul(A,he)|0;var Pe=(u+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,ye)|0)+Math.imul(E,pe)|0))<<13)|0;u=((o=o+Math.imul(E,ye)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(K,Z),i=(i=Math.imul(K,ee))+Math.imul(U,Z)|0,o=Math.imul(U,ee),n=n+Math.imul(N,re)|0,i=(i=i+Math.imul(N,ne)|0)+Math.imul(L,re)|0,o=o+Math.imul(L,ne)|0,n=n+Math.imul(x,oe)|0,i=(i=i+Math.imul(x,se)|0)+Math.imul(M,oe)|0,o=o+Math.imul(M,se)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,ue)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,ue)|0,n=n+Math.imul(I,le)|0,i=(i=i+Math.imul(I,he)|0)+Math.imul(C,le)|0,o=o+Math.imul(C,he)|0;var Re=(u+(n=n+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,ye)|0)+Math.imul(A,pe)|0))<<13)|0;u=((o=o+Math.imul(A,ye)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(K,re),i=(i=Math.imul(K,ne))+Math.imul(U,re)|0,o=Math.imul(U,ne),n=n+Math.imul(N,oe)|0,i=(i=i+Math.imul(N,se)|0)+Math.imul(L,oe)|0,o=o+Math.imul(L,se)|0,n=n+Math.imul(x,ce)|0,i=(i=i+Math.imul(x,ue)|0)+Math.imul(M,ce)|0,o=o+Math.imul(M,ue)|0,n=n+Math.imul(R,le)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(k,le)|0,o=o+Math.imul(k,he)|0;var ke=(u+(n=n+Math.imul(I,pe)|0)|0)+((8191&(i=(i=i+Math.imul(I,ye)|0)+Math.imul(C,pe)|0))<<13)|0;u=((o=o+Math.imul(C,ye)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(K,oe),i=(i=Math.imul(K,se))+Math.imul(U,oe)|0,o=Math.imul(U,se),n=n+Math.imul(N,ce)|0,i=(i=i+Math.imul(N,ue)|0)+Math.imul(L,ce)|0,o=o+Math.imul(L,ue)|0,n=n+Math.imul(x,le)|0,i=(i=i+Math.imul(x,he)|0)+Math.imul(M,le)|0,o=o+Math.imul(M,he)|0;var Be=(u+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,ye)|0)+Math.imul(k,pe)|0))<<13)|0;u=((o=o+Math.imul(k,ye)|0)+(i>>>13)|0)+(Be>>>26)|0,Be&=67108863,n=Math.imul(K,ce),i=(i=Math.imul(K,ue))+Math.imul(U,ce)|0,o=Math.imul(U,ue),n=n+Math.imul(N,le)|0,i=(i=i+Math.imul(N,he)|0)+Math.imul(L,le)|0,o=o+Math.imul(L,he)|0;var xe=(u+(n=n+Math.imul(x,pe)|0)|0)+((8191&(i=(i=i+Math.imul(x,ye)|0)+Math.imul(M,pe)|0))<<13)|0;u=((o=o+Math.imul(M,ye)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(K,le),i=(i=Math.imul(K,he))+Math.imul(U,le)|0,o=Math.imul(U,he);var Me=(u+(n=n+Math.imul(N,pe)|0)|0)+((8191&(i=(i=i+Math.imul(N,ye)|0)+Math.imul(L,pe)|0))<<13)|0;u=((o=o+Math.imul(L,ye)|0)+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863;var Oe=(u+(n=Math.imul(K,pe))|0)+((8191&(i=(i=Math.imul(K,ye))+Math.imul(U,pe)|0))<<13)|0;return u=((o=Math.imul(U,ye))+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,c[0]=ge,c[1]=be,c[2]=me,c[3]=ve,c[4]=we,c[5]=Ee,c[6]=_e,c[7]=Se,c[8]=Ae,c[9]=Te,c[10]=Ie,c[11]=Ce,c[12]=Pe,c[13]=Re,c[14]=ke,c[15]=Be,c[16]=xe,c[17]=Me,c[18]=Oe,0!==u&&(c[19]=u,r.length++),r};function y(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=d),o.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?d(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,s&=67108863}r.words[o]=a,n=s,s=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,e,t):y(this,e,t),r},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,i,o){for(var s=0;s>>=1)i++;return 1<>>=13,r[2*s+1]=8191&o,o>>>=13;for(s=2*t;s>=26,t+=i/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var s=0;for(t=0;t>>26-r}s&&(this.words[t]=s,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,s=Math.min((e-o)/26,this.length),a=67108863^67108863>>>o<s)for(this.length-=s,u=0;u=0&&(0!==f||u>=i);u--){var l=0|this.words[u];this.words[u]=f<<26-o|l>>>o,f=l&a}return c&&0!==f&&(c.words[c.length++]=f),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"==typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"==typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===a)return this.strip();for(n(-1===a),a=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,s=0|i.words[i.length-1];0!=(r=26-this._countBits(s))&&(i=i.ushln(r),n.iushln(r),s=0|i.words[i.length-1]);var a,c=n.length-i.length;if("mod"!==t){(a=new o(null)).length=c+1,a.words=new Array(a.length);for(var u=0;u=0;l--){var h=67108864*(0|n.words[i.length+l])+(0|n.words[i.length+l-1]);for(h=Math.min(h/s|0,67108863),n._ishlnsubmul(i,h,l);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,l),n.isZero()||(n.negative^=1);a&&(a.words[l]=h)}return a&&a.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:a||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(a=this.neg().divmod(e,t),"mod"!==t&&(i=a.div.neg()),"div"!==t&&(s=a.mod.neg(),r&&0!==s.negative&&s.iadd(e)),{div:i,mod:s}):0===this.negative&&0!==e.negative?(a=this.divmod(e.neg(),t),"mod"!==t&&(i=a.div.neg()),{div:i,mod:a.mod}):0!=(this.negative&e.negative)?(a=this.neg().divmod(e.neg(),t),"div"!==t&&(s=a.mod.neg(),r&&0!==s.negative&&s.isub(e)),{div:a.div,mod:s}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,s,a},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},o.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),s=new o(0),a=new o(0),c=new o(1),u=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++u;for(var f=r.clone(),l=t.clone();!t.isZero();){for(var h=0,d=1;0==(t.words[0]&d)&&h<26;++h,d<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||s.isOdd())&&(i.iadd(f),s.isub(l)),i.iushrn(1),s.iushrn(1);for(var p=0,y=1;0==(r.words[0]&y)&&p<26;++p,y<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(a.isOdd()||c.isOdd())&&(a.iadd(f),c.isub(l)),a.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(a),s.isub(c)):(r.isub(t),a.isub(i),c.isub(s))}return{a,b:c,gcd:r.iushln(u)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,s=new o(1),a=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var u=0,f=1;0==(t.words[0]&f)&&u<26;++u,f<<=1);if(u>0)for(t.iushrn(u);u-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);for(var l=0,h=1;0==(r.words[0]&h)&&l<26;++l,h<<=1);if(l>0)for(r.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);t.cmp(r)>=0?(t.isub(r),s.isub(a)):(r.isub(t),a.isub(s))}return(i=0===t.cmpn(1)?s:a).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0==(1&this.words[0])},o.prototype.isOdd=function(){return 1==(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"==typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,a&=67108863,this.words[s]=a}return 0!==o&&(this.words[s]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new S(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var b={k256:null,p224:null,p192:null,p25519:null};function m(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function v(){m.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){m.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function E(){m.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){m.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(e){if("string"==typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function A(e){S.call(this,e),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}m.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},m.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},m.prototype.split=function(e,t){e.iushrn(this.n,0,t)},m.prototype.imulK=function(e){return e.imul(this.k)},i(v,m),v.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=s}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},v.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(b[e])return b[e];var t;if("k256"===e)t=new v;else if("p224"===e)t=new w;else if("p192"===e)t=new E;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return b[e]=t,t},S.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},S.prototype._verify2=function(e,t){n(0==(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},S.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},S.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},S.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},S.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},S.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},S.prototype.isqr=function(e){return this.imul(e,e.clone())},S.prototype.sqr=function(e){return this.mul(e,e)},S.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2==1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),s=0;!i.isZero()&&0===i.andln(1);)s++,i.iushrn(1);n(!i.isZero());var a=new o(1).toRed(this),c=a.redNeg(),u=this.m.subn(1).iushrn(1),f=this.m.bitLength();for(f=new o(2*f*f).toRed(this);0!==this.pow(f,u).cmp(c);)f.redIAdd(c);for(var l=this.pow(f,i),h=this.pow(e,i.addn(1).iushrn(1)),d=this.pow(e,i),p=s;0!==d.cmp(a);){for(var y=d,g=0;0!==y.cmp(a);g++)y=y.redSqr();n(g=0;n--){for(var u=t.words[n],f=c-1;f>=0;f--){var l=u>>f&1;i!==r[0]&&(i=this.sqr(i)),0!==l||0!==s?(s<<=1,s|=l,(4==++a||0===n&&0===f)&&(i=this.mul(i,r[s]),a=0,s=0)):a=0}c=26}return i},S.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},S.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new A(e)},i(A,S),A.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},A.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},A.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},A.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),s=i;return i.cmp(this.m)>=0?s=i.isub(this.m):i.cmpn(0)<0&&(s=i.iadd(this.m)),s._forceRed(this)},A.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},29931:(e,t,r)=>{var n;function i(e){this.rand=e}if(e.exports=function(e){return n||(n=new i(null)),n.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r{"use strict";var n=r(34155);Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o="undefined"!=typeof window&&void 0!==window.document,s=void 0!==n&&null!=n.versions&&null!=n.versions.node,a="object"===("undefined"==typeof self?"undefined":i(self))&&self.constructor&&"DedicatedWorkerGlobalScope"===self.constructor.name,c="undefined"!=typeof window&&"nodejs"===window.name||"undefined"!=typeof navigator&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom")),u="undefined"!=typeof Deno&&void 0!==Deno.core;t.isBrowser=o,t.isWebWorker=a,t.isNode=s,t.isJsDom=c,t.isDeno=u},77191:(e,t,r)=>{var n=r(58162);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},48764:(e,t,r)=>{"use strict";const n=r(79742),i=r(80645),o="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const s=2147483647;function a(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return l(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=a(r);const i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Y(e,Uint8Array)){const t=new Uint8Array(e);return d(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Y(e,ArrayBuffer)||e&&Y(e.buffer,ArrayBuffer))return d(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(Y(e,SharedArrayBuffer)||e&&Y(e.buffer,SharedArrayBuffer)))return d(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=a(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||X(e.length)?a(0):h(e):"Buffer"===e.type&&Array.isArray(e.data)?h(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function f(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function l(e){return f(e),a(e<0?0:0|p(e))}function h(e){const t=e.length<0?0:0|p(e.length),r=a(t);for(let n=0;n=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Y(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return $(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return G(e).length;default:if(i)return n?-1:$(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return k(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return P(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return T(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function b(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function m(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),X(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:v(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):v(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,r,n,i){let o,s=1,a=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,r/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){let n=-1;for(o=r;oa&&(r=a-c),o=r;o>=0;o--){let r=!0;for(let n=0;ni&&(n=i):n=i;const o=t.length;let s;for(n>o/2&&(n=o/2),s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function T(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+s<=r){let r,n,a,c;switch(s){case 1:t<128&&(o=t);break;case 2:r=e[i+1],128==(192&r)&&(c=(31&t)<<6|63&r,c>127&&(o=c));break;case 3:r=e[i+1],n=e[i+2],128==(192&r)&&128==(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:r=e[i+1],n=e[i+2],a=e[i+3],128==(192&r)&&128==(192&n)&&128==(192&a)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&a,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=s}return function(e){const t=e.length;if(t<=C)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(Y(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(t>>>=0);const a=Math.min(o,s),u=this.slice(n,i),f=e.slice(t,r);for(let e=0;e>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return E(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const C=4096;function P(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let n=t;nr)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function O(e,t,r,n,i){F(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,s>>=8,e[r++]=s,r}function N(e,t,r,n,i){F(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o>>=8,e[r+6]=o,o>>=8,e[r+5]=o,o>>=8,e[r+4]=o;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=s,s>>=8,e[r+2]=s,s>>=8,e[r+1]=s,s>>=8,e[r]=s,r+8}function L(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return t=+t,r>>>=0,o||L(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function K(e,t,r,n,o){return t=+t,r>>>=0,o||L(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||x(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>=0,t>>>=0,r||x(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=J((function(e){q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||x(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||x(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||x(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||x(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=J((function(e){q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||H(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||x(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||x(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);let i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);let i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=J((function(e,t=0){return O(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=J((function(e,t=0){return N(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);M(this,e,t,r,n-1,-n)}let i=0,o=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);M(this,e,t,r,n-1,-n)}let i=r-1,o=1,s=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/o>>0)-s&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=J((function(e,t=0){return O(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=J((function(e,t=0){return N(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return K(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return K(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function F(e,t,r,n,i,o){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(o+1)}${n}`:`>= -(2${n} ** ${8*(o+1)-1}${n}) and < 2 ** ${8*(o+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new U.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){q(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||H(t,e.length-(r+1))}(n,i,o)}function q(e,t){if("number"!=typeof e)throw new U.ERR_INVALID_ARG_TYPE(t,"number",e)}function H(e,t,r){if(Math.floor(e)!==e)throw q(e,r),new U.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new U.ERR_BUFFER_OUT_OF_BOUNDS;throw new U.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}j("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),j("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),j("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=V(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=V(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const z=/[^+/0-9A-Za-z-_]/g;function $(e,t){let r;t=t||1/0;const n=e.length;let i=null;const o=[];for(let s=0;s55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function G(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(z,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function W(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Y(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function X(e){return e!=e}const Q=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function J(e){return"undefined"==typeof BigInt?Z:e}function Z(){throw new Error("BigInt not supported")}},98514:e=>{"use strict";e.exports=function(e,{className:t,symbolName:r}){const n=Symbol.for(r),i={[t]:class extends e{constructor(...e){super(...e),Object.defineProperty(this,n,{value:!0})}get[Symbol.toStringTag](){return t}}}[t];return i[`is${t}`]=e=>!(!e||!e[n]),i},e.exports.proto=function(e,{className:t,symbolName:r,withoutNew:n}){const i=Symbol.for(r),o={[t]:function(...t){if(n&&!(this instanceof o))return new o(...t);const r=e.call(this,...t)||this;return r&&!r[i]&&Object.defineProperty(r,i,{value:!0}),r}}[t];return o.prototype=Object.create(e.prototype),o.prototype.constructor=o,Object.defineProperty(o.prototype,Symbol.toStringTag,{get:()=>t}),o[`is${t}`]=e=>!(!e||!e[i]),o}},75281:(e,t,r)=>{"use strict";const n=r(5696),i=/\s+at.*(?:\(|\s)(.*)\)?/,o=/^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/,s=void 0===n.homedir?"":n.homedir();e.exports=(e,t)=>(t=Object.assign({pretty:!1},t),e.replace(/\\/g,"/").split("\n").filter((e=>{const t=e.match(i);if(null===t||!t[1])return!0;const r=t[1];return!r.includes(".app/Contents/Resources/electron.asar")&&!r.includes(".app/Contents/Resources/default_app.asar")&&!o.test(r)})).filter((e=>""!==e.trim())).map((e=>t.pretty?e.replace(i,((e,t)=>e.replace(t,t.replace(s,"~")))):e)).join("\n"))},51424:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(8081),i=r.n(n),o=r(23645),s=r.n(o)()(i());s.push([e.id,".hidden {\n display: none;\n}\n",""]);const a=s},23645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",n=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),n&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),n&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,n,i,o){"string"==typeof e&&(e=[[null,e,void 0]]);var s={};if(n)for(var a=0;a0?" ".concat(f[5]):""," {").concat(f[1],"}")),f[5]=o),r&&(f[2]?(f[1]="@media ".concat(f[2]," {").concat(f[1],"}"),f[2]=r):f[2]=r),i&&(f[4]?(f[1]="@supports (".concat(f[4],") {").concat(f[1],"}"),f[4]=i):f[4]="".concat(i)),t.push(f))}},t}},8081:e=>{"use strict";e.exports=function(e){return e[1]}},11227:(e,t,r)=>{var n=r(34155);t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const r="color: "+this.color;t.splice(1,0,r,"color: inherit");let n=0,i=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(n++,"%c"===e&&(i=n))})),t.splice(i,0,r)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}return!e&&void 0!==n&&"env"in n&&(e=n.env.DEBUG),e},t.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=r(82447)(t);const{formatters:i}=e.exports;i.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},82447:(e,t,r)=>{e.exports=function(e){function t(e){let r,i,o,s=null;function a(...e){if(!a.enabled)return;const n=a,i=Number(new Date),o=i-(r||i);n.diff=o,n.prev=r,n.curr=i,r=i,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let s=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((r,i)=>{if("%%"===r)return"%";s++;const o=t.formatters[i];if("function"==typeof o){const t=e[s];r=o.call(n,t),e.splice(s,1),s--}return r})),t.formatArgs.call(n,e),(n.log||t.log).apply(n,e)}return a.namespace=e,a.useColors=t.useColors(),a.color=t.selectColor(e),a.extend=n,a.destroy=t.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(i!==t.namespaces&&(i=t.namespaces,o=t.enabled(e)),o),set:e=>{s=e}}),"function"==typeof t.init&&t.init(a),a}function n(e,r){const n=t(this.namespace+(void 0===r?":":r)+e);return n.log=this.log,n}function i(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names.map(i),...t.skips.map(i).map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){let r;t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").split(/[\s,]+/),i=n.length;for(r=0;r{t[r]=e[r]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let r=0;for(let t=0;t{"use strict";var t={single_source_shortest_paths:function(e,r,n){var i={},o={};o[r]=0;var s,a,c,u,f,l,h,d=t.PriorityQueue.make();for(d.push(r,0);!d.empty();)for(c in a=(s=d.pop()).value,u=s.cost,f=e[a]||{})f.hasOwnProperty(c)&&(l=u+f[c],h=o[c],(void 0===o[c]||h>l)&&(o[c]=l,d.push(c,l),i[c]=a));if(void 0!==n&&void 0===o[n]){var p=["Could not find a path from ",r," to ",n,"."].join("");throw new Error(p)}return i},extract_shortest_path_from_predecessor_list:function(e,t){for(var r=[],n=t;n;)r.push(n),e[n],n=e[n];return r.reverse(),r},find_path:function(e,r,n){var i=t.single_source_shortest_paths(e,r,n);return t.extract_shortest_path_from_predecessor_list(i,n)},PriorityQueue:{make:function(e){var r,n=t.PriorityQueue,i={};for(r in e=e||{},n)n.hasOwnProperty(r)&&(i[r]=n[r]);return i.queue=[],i.sorter=e.sorter||n.default_sorter,i},default_sorter:function(e,t){return e.cost-t.cost},push:function(e,t){var r={value:e,cost:t};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};e.exports=t},926:(e,t,r)=>{"use strict";const n=r(11227),i=n("dns-over-http-resolver");i.error=n("dns-over-http-resolver:error");const o=r(73692),s=r(46177);class a{constructor({maxCache:e=100}={}){this._cache=new o({max:e}),this._servers=["https://cloudflare-dns.com/dns-query","https://dns.google/resolve"]}getServers(){return this._servers}_getShuffledServers(){const e=[].concat(this._servers);for(let t=e.length-1;t>0;t--){const r=Math.floor(Math.random()*t),n=e[t];e[t]=e[r],e[r]=n}return e}setServers(e){this._servers=e}resolve(e,t="A"){switch(t){case"A":return this.resolve4(e);case"AAAA":return this.resolve6(e);case"TXT":return this.resolveTxt(e);default:throw new Error(`${t} is not supported`)}}async resolve4(e){const t=this._cache.get(s.getCacheKey(e,"A"));if(t)return t;for(const t of this._getShuffledServers())try{const r=await s.fetch(s.buildResource({serverResolver:t,hostname:e,recordType:"A"})),n=await r.json(),i=n.Answer.map((e=>e.data)),o=Math.min(n.Answer.map((e=>e.TTL)));return this._cache.set(s.getCacheKey(e,"A"),i,{ttl:o}),i}catch(r){i.error(`${t} could not resolve ${e} record A`)}throw new Error(`Could not resolve ${e} record A`)}async resolve6(e){const t="AAAA",r=this._cache.get(s.getCacheKey(e,t));if(r)return r;for(const r of this._getShuffledServers())try{const n=await s.fetch(s.buildResource({serverResolver:r,hostname:e,recordType:t})),i=await n.json(),o=i.Answer.map((e=>e.data)),a=Math.min(i.Answer.map((e=>e.TTL)));return this._cache.set(s.getCacheKey(e,t),o,{ttl:a}),o}catch(t){i.error(`${r} could not resolve ${e} record AAAA`)}throw new Error(`Could not resolve ${e} record AAAA`)}async resolveTxt(e){const t="TXT",r=this._cache.get(s.getCacheKey(e,t));if(r)return r;for(const r of this._getShuffledServers())try{const n=await s.fetch(s.buildResource({serverResolver:r,hostname:e,recordType:t})),i=await n.json(),o=i.Answer.map((e=>[e.data.replace(/['"]+/g,"")])),a=Math.min(i.Answer.map((e=>e.TTL)));return this._cache.set(s.getCacheKey(e,t),o,{ttl:a}),o}catch(t){i.error(`${r} could not resolve ${e} record TXT`)}throw new Error(`Could not resolve ${e} record TXT`)}}a.Resolver=a,e.exports=a},46177:(e,t,r)=>{"use strict";const{default:n,Headers:i}=r(30700);e.exports={buildResource:function({serverResolver:e,hostname:t,recordType:r}){return`${e}?name=${t}&type=${r}`},fetch:function(e){return n(e,{headers:new i({accept:"application/dns-json"})})},getCacheKey:function(e,t){return`${t}_${e}`}}},86266:(e,t,r)=>{"use strict";var n=t;n.version=r(18597).i8,n.utils=r(80953),n.rand=r(29931),n.curve=r(88254),n.curves=r(45427),n.ec=r(57954),n.eddsa=r(65980)},4918:(e,t,r)=>{"use strict";var n=r(13550),i=r(80953),o=i.getNAF,s=i.getJSF,a=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function u(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){a(e.precomputed);var r=e._getDoubles(),n=o(t,1,this._bitLength),i=(1<=s;f--)c=(c<<1)+n[f];u.push(c)}for(var l=this.jpoint(null,null,null),h=this.jpoint(null,null,null),d=i;d>0;d--){for(s=0;s=0;u--){for(var f=0;u>=0&&0===s[u];u--)f++;if(u>=0&&f++,c=c.dblp(f),u<0)break;var l=s[u];a(0!==l),c="affine"===e.type?l>0?c.mixedAdd(i[l-1>>1]):c.mixedAdd(i[-l-1>>1].neg()):l>0?c.add(i[l-1>>1]):c.add(i[-l-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){var a,c,u,f=this._wnafT1,l=this._wnafT2,h=this._wnafT3,d=0;for(a=0;a=1;a-=2){var y=a-1,g=a;if(1===f[y]&&1===f[g]){var b=[t[y],null,null,t[g]];0===t[y].y.cmp(t[g].y)?(b[1]=t[y].add(t[g]),b[2]=t[y].toJ().mixedAdd(t[g].neg())):0===t[y].y.cmp(t[g].y.redNeg())?(b[1]=t[y].toJ().mixedAdd(t[g]),b[2]=t[y].add(t[g].neg())):(b[1]=t[y].toJ().mixedAdd(t[g]),b[2]=t[y].toJ().mixedAdd(t[g].neg()));var m=[-3,-1,-5,-7,0,7,5,1,3],v=s(r[y],r[g]);for(d=Math.max(v[0].length,d),h[y]=new Array(d),h[g]=new Array(d),c=0;c=0;a--){for(var A=0;a>=0;){var T=!0;for(c=0;c=0&&A++,_=_.dblp(A),a<0)break;for(c=0;c0?u=l[c][I-1>>1]:I<0&&(u=l[c][-I-1>>1].neg()),_="affine"===u.type?_.mixedAdd(u):_.add(u))}}for(a=0;a=Math.ceil((e.bitLength()+1)/t.step)},u.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i{"use strict";var n=r(80953),i=r(13550),o=r(35717),s=r(4918),a=n.assert;function c(e){this.twisted=1!=(0|e.a),this.mOneA=this.twisted&&-1==(0|e.a),this.extended=this.mOneA,s.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),a(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1==(0|e.c)}function u(e,t,r,n,o){s.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,s),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),s=n.redMul(o.redInvm()),a=s.redSqrt();if(0!==a.redSqr().redSub(s).cmp(this.zero))throw new Error("invalid point");var c=a.fromRed().isOdd();return(t&&!c||!t&&c)&&(a=a.redNeg()),this.point(e,a)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),s=n.redMul(o.redInvm());if(0===s.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var a=s.redSqrt();if(0!==a.redSqr().redSub(s).cmp(this.zero))throw new Error("invalid point");return a.fromRed().isOdd()!==t&&(a=a.redNeg()),this.point(a,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(u,s.BasePoint),c.prototype.pointFromJSON=function(e){return u.fromJSON(this,e)},c.prototype.point=function(e,t,r,n){return new u(this,e,t,r,n)},u.fromJSON=function(e,t){return new u(e,t[0],t[1],t[2])},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},u.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=n.redAdd(t),s=o.redSub(r),a=n.redSub(t),c=i.redMul(s),u=o.redMul(a),f=i.redMul(a),l=s.redMul(o);return this.curve.point(c,u,l,f)},u.prototype._projDbl=function(){var e,t,r,n,i,o,s=this.x.redAdd(this.y).redSqr(),a=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var u=(n=this.curve._mulA(a)).redAdd(c);this.zOne?(e=s.redSub(a).redSub(c).redMul(u.redSub(this.curve.two)),t=u.redMul(n.redSub(c)),r=u.redSqr().redSub(u).redSub(u)):(i=this.z.redSqr(),o=u.redSub(i).redISub(i),e=s.redSub(a).redISub(c).redMul(o),t=u.redMul(n.redSub(c)),r=u.redMul(o))}else n=a.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),e=this.curve._mulC(s.redISub(n)).redMul(o),t=this.curve._mulC(n).redMul(a.redISub(c)),r=n.redMul(o);return this.curve.point(e,t,r)},u.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},u.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),s=i.redSub(n),a=i.redAdd(n),c=r.redAdd(t),u=o.redMul(s),f=a.redMul(c),l=o.redMul(c),h=s.redMul(a);return this.curve.point(u,f,h,l)},u.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),o=this.x.redMul(e.x),s=this.y.redMul(e.y),a=this.curve.d.redMul(o).redMul(s),c=i.redSub(a),u=i.redAdd(a),f=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(s),l=n.redMul(c).redMul(f);return this.curve.twisted?(t=n.redMul(u).redMul(s.redSub(this.curve._mulA(o))),r=c.redMul(u)):(t=n.redMul(u).redMul(s.redSub(o)),r=this.curve._mulC(c).redMul(u)),this.curve.point(l,t,r)},u.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},u.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},u.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},u.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},u.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},u.prototype.getX=function(){return this.normalize(),this.x.fromRed()},u.prototype.getY=function(){return this.normalize(),this.y.fromRed()},u.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},u.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},u.prototype.toP=u.prototype.normalize,u.prototype.mixedAdd=u.prototype.add},88254:(e,t,r)=>{"use strict";var n=t;n.base=r(4918),n.short=r(6673),n.mont=r(22881),n.edwards=r(31138)},22881:(e,t,r)=>{"use strict";var n=r(13550),i=r(35717),o=r(4918),s=r(80953);function a(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(a,o),e.exports=a,a.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},i(c,o.BasePoint),a.prototype.decodePoint=function(e,t){return this.point(s.toArray(e,t),1)},a.prototype.point=function(e,t){return new c(this,e,t)},a.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),s=i.redMul(n),a=t.z.redMul(o.redAdd(s).redSqr()),c=t.x.redMul(o.redISub(s).redSqr());return this.curve.point(a,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},6673:(e,t,r)=>{"use strict";var n=r(80953),i=r(13550),o=r(35717),s=r(4918),a=n.assert;function c(e){s.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function u(e,t,r,n){s.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function f(e,t,r,n){s.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,s),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);t=(t=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(e.lambda)r=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],a(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),r=new i(2).toRed(t).redInvm(),n=r.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,n,o,s,a,c,u,f,l=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,d=this.n.clone(),p=new i(1),y=new i(0),g=new i(0),b=new i(1),m=0;0!==h.cmpn(0);){var v=d.div(h);u=d.sub(v.mul(h)),f=g.sub(v.mul(p));var w=b.sub(v.mul(y));if(!n&&u.cmp(l)<0)t=c.neg(),r=p,n=u.neg(),o=f;else if(n&&2==++m)break;c=u,d=h,h=u,g=p,p=f,b=y,y=w}s=u.neg(),a=f;var E=n.sqr().add(o.sqr());return s.sqr().add(a.sqr()).cmp(E)>=0&&(s=t,a=r),n.negative&&(n=n.neg(),o=o.neg()),s.negative&&(s=s.neg(),a=a.neg()),[{a:n,b:o},{a:s,b:a}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),s=i.mul(r.a),a=o.mul(n.a),c=i.mul(r.b),u=o.mul(n.b);return{k1:e.sub(s).sub(a),k2:c.add(u).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},u.prototype.isInfinity=function(){return this.inf},u.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},u.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),s=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,s)},u.prototype.getX=function(){return this.x.fromRed()},u.prototype.getY=function(){return this.y.fromRed()},u.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},u.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},u.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},u.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},u.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},u.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(f,s.BasePoint),c.prototype.jpoint=function(e,t,r){return new f(this,e,t,r)},f.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},f.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},f.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),s=e.y.redMul(r.redMul(this.z)),a=n.redSub(i),c=o.redSub(s);if(0===a.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var u=a.redSqr(),f=u.redMul(a),l=n.redMul(u),h=c.redSqr().redIAdd(f).redISub(l).redISub(l),d=c.redMul(l.redISub(h)).redISub(o.redMul(f)),p=this.z.redMul(e.z).redMul(a);return this.curve.jpoint(h,d,p)},f.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),s=r.redSub(n),a=i.redSub(o);if(0===s.cmpn(0))return 0!==a.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=s.redSqr(),u=c.redMul(s),f=r.redMul(c),l=a.redSqr().redIAdd(u).redISub(f).redISub(f),h=a.redMul(f.redISub(l)).redISub(i.redMul(u)),d=this.z.redMul(s);return this.curve.jpoint(l,h,d)},f.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},f.prototype.inspect=function(){return this.isInfinity()?"":""},f.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},45427:(e,t,r)=>{"use strict";var n,i=t,o=r(33715),s=r(88254),a=r(80953).assert;function c(e){"short"===e.type?this.curve=new s.short(e):"edwards"===e.type?this.curve=new s.edwards(e):this.curve=new s.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,a(this.g.validate(),"Invalid curve"),a(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function u(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,u("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),u("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),u("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),u("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),u("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),u("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),u("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(91037)}catch(e){n=void 0}u("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},57954:(e,t,r)=>{"use strict";var n=r(13550),i=r(2156),o=r(80953),s=r(45427),a=r(29931),c=o.assert,u=r(31251),f=r(90611);function l(e){if(!(this instanceof l))return new l(e);"string"==typeof e&&(c(Object.prototype.hasOwnProperty.call(s,e),"Unknown curve "+e),e=s[e]),e instanceof s.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=l,l.prototype.keyPair=function(e){return new u(this,e)},l.prototype.keyFromPrivate=function(e,t){return u.fromPrivate(this,e,t)},l.prototype.keyFromPublic=function(e,t){return u.fromPublic(this,e,t)},l.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||a(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new n(2));;){var s=new n(t.generate(r));if(!(s.cmp(o)>0))return s.iaddn(1),this.keyFromPrivate(s)}},l.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},l.prototype.sign=function(e,t,r,o){"object"==typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var s=this.n.byteLength(),a=t.getPrivate().toArray("be",s),c=e.toArray("be",s),u=new i({hash:this.hash,entropy:a,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),l=this.n.sub(new n(1)),h=0;;h++){var d=o.k?o.k(h):new n(u.generate(this.n.byteLength()));if(!((d=this._truncateToN(d,!0)).cmpn(1)<=0||d.cmp(l)>=0)){var p=this.g.mul(d);if(!p.isInfinity()){var y=p.getX(),g=y.umod(this.n);if(0!==g.cmpn(0)){var b=d.invm(this.n).mul(g.mul(t.getPrivate()).iadd(e));if(0!==(b=b.umod(this.n)).cmpn(0)){var m=(p.getY().isOdd()?1:0)|(0!==y.cmp(g)?2:0);return o.canonical&&b.cmp(this.nh)>0&&(b=this.n.sub(b),m^=1),new f({r:g,s:b,recoveryParam:m})}}}}}},l.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var o=(t=new f(t,"hex")).r,s=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(s.cmpn(1)<0||s.cmp(this.n)>=0)return!1;var a,c=s.invm(this.n),u=c.mul(e).umod(this.n),l=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(a=this.g.jmulAdd(u,r.getPublic(),l)).isInfinity()&&a.eqXToP(o):!(a=this.g.mulAdd(u,r.getPublic(),l)).isInfinity()&&0===a.getX().umod(this.n).cmp(o)},l.prototype.recoverPubKey=function(e,t,r,i){c((3&r)===r,"The recovery param is more than two bits"),t=new f(t,i);var o=this.n,s=new n(e),a=t.r,u=t.s,l=1&r,h=r>>1;if(a.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");a=h?this.curve.pointFromX(a.add(this.curve.n),l):this.curve.pointFromX(a,l);var d=t.r.invm(o),p=o.sub(s).mul(d).umod(o),y=u.mul(d).umod(o);return this.g.mulAdd(p,a,y)},l.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new f(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},31251:(e,t,r)=>{"use strict";var n=r(13550),i=r(80953).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"==typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new n(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return""}},90611:(e,t,r)=>{"use strict";var n=r(13550),i=r(80953),o=i.assert;function s(e,t){if(e instanceof s)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function a(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,s=t.place;o>>=0;return!(i<=127)&&(t.place=s,i)}function u(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=s,s.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new a;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var s=c(e,r);if(!1===s)return!1;var u=e.slice(r.place,s+r.place);if(r.place+=s,2!==e[r.place++])return!1;var f=c(e,r);if(!1===f)return!1;if(e.length!==f+r.place)return!1;var l=e.slice(r.place,f+r.place);if(0===u[0]){if(!(128&u[1]))return!1;u=u.slice(1)}if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}return this.r=new n(u),this.s=new n(l),this.recoveryParam=null,!0},s.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=u(t),r=u(r);!(r[0]||128&r[1]);)r=r.slice(1);var n=[2];f(n,t.length),(n=n.concat(t)).push(2),f(n,r.length);var o=n.concat(r),s=[48];return f(s,o.length),s=s.concat(o),i.encode(s,e)}},65980:(e,t,r)=>{"use strict";var n=r(33715),i=r(45427),o=r(80953),s=o.assert,a=o.parseBytes,c=r(79087),u=r(23622);function f(e){if(s("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof f))return new f(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=f,f.prototype.sign=function(e,t){e=a(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),o=this.encodePoint(i),s=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=n.add(s).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},f.prototype.verify=function(e,t,r){e=a(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(o)},f.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";var n=r(80953),i=n.assert,o=n.parseBytes,s=n.cachedProperty;function a(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}a.fromPublic=function(e,t){return t instanceof a?t:new a(e,{pub:t})},a.fromSecret=function(e,t){return t instanceof a?t:new a(e,{secret:t})},a.prototype.secret=function(){return this._secret},s(a,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),s(a,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),s(a,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),s(a,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),s(a,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),s(a,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),a.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},a.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},a.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),n.encode(this.secret(),e)},a.prototype.getPublic=function(e){return n.encode(this.pubBytes(),e)},e.exports=a},23622:(e,t,r)=>{"use strict";var n=r(13550),i=r(80953),o=i.assert,s=i.cachedProperty,a=i.parseBytes;function c(e,t){this.eddsa=e,"object"!=typeof t&&(t=a(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof n&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}s(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),s(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),s(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),s(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},91037:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},80953:(e,t,r)=>{"use strict";var n=t,i=r(13550),o=r(79746),s=r(34504);n.assert=o,n.toArray=s.toArray,n.zero2=s.zero2,n.toHex=s.toHex,n.encode=s.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-c:c,o.isubn(a)):a=0,n[s]=a,o.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var s,a,c=e.andln(3)+i&3,u=t.andln(3)+o&3;3===c&&(c=-1),3===u&&(u=-1),s=0==(1&c)?0:3!=(n=e.andln(7)+i&7)&&5!==n||2!==u?c:-c,r[0].push(s),a=0==(1&u)?0:3!=(n=t.andln(7)+o&7)&&5!==n||2!==c?u:-u,r[1].push(a),2*i===s+1&&(i=1-i),2*o===a+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"==typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},62378:e=>{"use strict";e.exports=function(e){for(var t=[],r=e.length,n=0;n=55296&&i<=56319&&r>n+1){var o=e.charCodeAt(n+1);o>=56320&&o<=57343&&(i=1024*(i-55296)+o-56320+65536,n+=1)}i<128?t.push(i):i<2048?(t.push(i>>6|192),t.push(63&i|128)):i<55296||i>=57344&&i<65536?(t.push(i>>12|224),t.push(i>>6&63|128),t.push(63&i|128)):i>=65536&&i<=1114111?(t.push(i>>18|240),t.push(i>>12&63|128),t.push(i>>6&63|128),t.push(63&i|128)):t.push(239,191,189)}return new Uint8Array(t).buffer}},32114:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"==typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"==typeof r&&(n=r,r=""),r&&(n.code=r);try{return t(e,n)}catch(r){n.message=e.message,n.stack=e.stack;const i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),t(new i,n)}}},76021:(e,t)=>{"use strict";function r(e){if("function"!=typeof e)throw new TypeError("Argument to promisify must be a function");var t=e["__ES6-PROMISIFY--CUSTOM-ARGUMENTS__"],n=r.Promise||Promise;if("function"!=typeof n)throw new Error("No Promise implementation found; do you need a polyfill?");return function(){for(var r=this,i=arguments.length,o=Array(i),s=0;s{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(8231);t.EventIterator=n.EventIterator,t.subscribe=function(e,t,r){return new n.EventIterator((({push:r})=>(this.addEventListener(e,r,t),()=>this.removeEventListener(e,r,t))),r)},t.default=n.EventIterator},8231:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});class r{constructor(){this.pullQueue=[],this.pushQueue=[],this.eventHandlers={},this.isPaused=!1,this.isStopped=!1}push(e){if(this.isStopped)return;const t={value:e,done:!1};if(this.pullQueue.length){const e=this.pullQueue.shift();e&&e.resolve(t)}else this.pushQueue.push(Promise.resolve(t)),void 0!==this.highWaterMark&&this.pushQueue.length>=this.highWaterMark&&!this.isPaused&&(this.isPaused=!0,this.eventHandlers.highWater?this.eventHandlers.highWater():console&&console.warn(`EventIterator queue reached ${this.pushQueue.length} items`))}stop(){if(!this.isStopped){this.isStopped=!0,this.remove();for(const e of this.pullQueue)e.resolve({value:void 0,done:!0});this.pullQueue.length=0}}fail(e){if(!this.isStopped)if(this.isStopped=!0,this.remove(),this.pullQueue.length){for(const t of this.pullQueue)t.reject(e);this.pullQueue.length=0}else{const t=Promise.reject(e);t.catch((()=>{})),this.pushQueue.push(t)}}remove(){Promise.resolve().then((()=>{this.removeCallback&&this.removeCallback()}))}[Symbol.asyncIterator](){return{next:e=>{const t=this.pushQueue.shift();return t?(void 0!==this.lowWaterMark&&this.pushQueue.length<=this.lowWaterMark&&this.isPaused&&(this.isPaused=!1,this.eventHandlers.lowWater&&this.eventHandlers.lowWater()),t):this.isStopped?Promise.resolve({value:void 0,done:!0}):new Promise(((e,t)=>{this.pullQueue.push({resolve:e,reject:t})}))},return:()=>(this.isStopped=!0,this.pushQueue.length=0,this.remove(),Promise.resolve({value:void 0,done:!0}))}}}class n{constructor(e,{highWaterMark:t=100,lowWaterMark:n=1}={}){const i=new r;i.highWaterMark=t,i.lowWaterMark=n,i.removeCallback=e({push:e=>i.push(e),stop:()=>i.stop(),fail:e=>i.fail(e),on:(e,t)=>{i.eventHandlers[e]=t}})||(()=>{}),this[Symbol.asyncIterator]=()=>i[Symbol.asyncIterator](),Object.freeze(this)}}t.EventIterator=n,t.default=n},17187:e=>{"use strict";var t,r="object"==typeof Reflect?Reflect:null,n=r&&"function"==typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}y(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"==typeof e.on&&y(e,"error",t,{once:!0})}(e,i)}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var s=10;function a(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function u(e,t,r,n){var i,o,s,u;if(a(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),s=o[t]),void 0===s)s=o[t]=r,++e._eventsCount;else if("function"==typeof s?s=o[t]=n?[r,s]:[s,r]:n?s.unshift(r):s.push(r),(i=c(e))>0&&s.length>i&&!s.warned){s.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=e,f.type=t,f.count=s.length,u=f,console&&console.warn&&console.warn(u)}return e}function f(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function l(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=f.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(s=t[0]),s instanceof Error)throw s;var a=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw a.context=s,a}var c=o[e];if(void 0===c)return!1;if("function"==typeof c)n(c,this,t);else{var u=c.length,f=p(c,u);for(r=0;r=0;o--)if(r[o]===t||r[o].listener===t){s=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return h(this,e,!0)},o.prototype.rawListeners=function(e){return h(this,e,!1)},o.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):d.call(e,t)},o.prototype.listenerCount=d,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},3975:e=>{e.exports=class{constructor(e){if(!(e>0)||0!=(e-1&e))throw new Error("Max size for a FixedFIFO should be a power of two");this.buffer=new Array(e),this.mask=e-1,this.top=0,this.btm=0,this.next=null}push(e){return void 0===this.buffer[this.top]&&(this.buffer[this.top]=e,this.top=this.top+1&this.mask,!0)}shift(){const e=this.buffer[this.btm];if(void 0!==e)return this.buffer[this.btm]=void 0,this.btm=this.btm+1&this.mask,e}peek(){return this.buffer[this.btm]}isEmpty(){return void 0===this.buffer[this.btm]}}},91607:(e,t,r)=>{const n=r(3975);e.exports=class{constructor(e){this.hwm=e||16,this.head=new n(this.hwm),this.tail=this.head}push(e){if(!this.head.push(e)){const t=this.head;this.head=t.next=new n(2*this.head.buffer.length),this.head.push(e)}}shift(){const e=this.tail.shift();if(void 0===e&&this.tail.next){const e=this.tail.next;return this.tail.next=null,this.tail=e,this.tail.shift()}return e}peek(){return this.tail.peek()}isEmpty(){return this.head.isEmpty()}}},22412:e=>{e.exports=function(e){if(e){if("function"==typeof e[Symbol.iterator])return e[Symbol.iterator]();if("function"==typeof e[Symbol.asyncIterator])return e[Symbol.asyncIterator]();if("function"==typeof e.next)return e}throw new Error("argument is not an iterator or iterable")}},33715:(e,t,r)=>{var n=t;n.utils=r(26436),n.common=r(95772),n.sha=r(89041),n.ripemd=r(12949),n.hmac=r(52344),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},95772:(e,t,r)=>{"use strict";var n=r(26436),i=r(79746);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o{"use strict";var n=r(26436),i=r(79746);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(26436),i=r(95772),o=n.rotl32,s=n.sum32,a=n.sum32_3,c=n.sum32_4,u=i.BlockHash;function f(){if(!(this instanceof f))return new f;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function l(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function d(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(f,u),t.ripemd160=f,f.blockSize=512,f.outSize=160,f.hmacStrength=192,f.padLength=64,f.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],u=this.h[3],f=this.h[4],m=r,v=n,w=i,E=u,_=f,S=0;S<80;S++){var A=s(o(c(r,l(S,n,i,u),e[p[S]+t],h(S)),g[S]),f);r=f,f=u,u=o(i,10),i=n,n=A,A=s(o(c(m,l(79-S,v,w,E),e[y[S]+t],d(S)),b[S]),_),m=_,_=E,E=o(w,10),w=v,v=A}A=a(this.h[1],i,E),this.h[1]=a(this.h[2],u,_),this.h[2]=a(this.h[3],f,m),this.h[3]=a(this.h[4],r,v),this.h[4]=a(this.h[0],n,w),this.h[0]=A},f.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],y=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],b=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},89041:(e,t,r)=>{"use strict";t.sha1=r(84761),t.sha224=r(10799),t.sha256=r(89344),t.sha384=r(80772),t.sha512=r(45900)},84761:(e,t,r)=>{"use strict";var n=r(26436),i=r(95772),o=r(37038),s=n.rotl32,a=n.sum32,c=n.sum32_5,u=o.ft_1,f=i.BlockHash,l=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;f.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,f),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(26436),i=r(89344);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},89344:(e,t,r)=>{"use strict";var n=r(26436),i=r(95772),o=r(37038),s=r(79746),a=n.sum32,c=n.sum32_4,u=n.sum32_5,f=o.ch32,l=o.maj32,h=o.s0_256,d=o.s1_256,p=o.g0_256,y=o.g1_256,g=i.BlockHash,b=[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 m(){if(!(this instanceof m))return new m;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=b,this.W=new Array(64)}n.inherits(m,g),e.exports=m,m.blockSize=512,m.outSize=256,m.hmacStrength=192,m.padLength=64,m.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(26436),i=r(45900);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},45900:(e,t,r)=>{"use strict";var n=r(26436),i=r(95772),o=r(79746),s=n.rotr64_hi,a=n.rotr64_lo,c=n.shr64_hi,u=n.shr64_lo,f=n.sum64,l=n.sum64_hi,h=n.sum64_lo,d=n.sum64_4_hi,p=n.sum64_4_lo,y=n.sum64_5_hi,g=n.sum64_5_lo,b=i.BlockHash,m=[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 v(){if(!(this instanceof v))return new v;b.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=m,this.W=new Array(160)}function w(e,t,r,n,i){var o=e&r^~e&i;return o<0&&(o+=4294967296),o}function E(e,t,r,n,i,o){var s=t&n^~t&o;return s<0&&(s+=4294967296),s}function _(e,t,r,n,i){var o=e&r^e&i^r&i;return o<0&&(o+=4294967296),o}function S(e,t,r,n,i,o){var s=t&n^t&o^n&o;return s<0&&(s+=4294967296),s}function A(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function I(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function C(e,t){var r=s(e,t,1)^s(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function P(e,t){var r=a(e,t,1)^a(e,t,8)^u(e,t,7);return r<0&&(r+=4294967296),r}function R(e,t){var r=a(e,t,19)^a(t,e,29)^u(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(v,b),e.exports=v,v.blockSize=1024,v.outSize=512,v.hmacStrength=192,v.padLength=128,v.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(26436).rotr32;function i(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function s(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?s(t,r,n):2===e?o(t,r,n):void 0},t.ch32=i,t.maj32=o,t.p32=s,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},26436:(e,t,r)=>{"use strict";var n=r(79746),i=r(35717);function o(e,t){return 55296==(64512&e.charCodeAt(t))&&!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1))}function s(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function a(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>6|192,r[n++]=63&s|128):o(e,i)?(s=65536+((1023&s)<<10)+(1023&e.charCodeAt(++i)),r[n++]=s>>18|240,r[n++]=s>>12&63|128,r[n++]=s>>6&63|128,r[n++]=63&s|128):(r[n++]=s>>12|224,r[n++]=s>>6&63|128,r[n++]=63&s|128)}else for(i=0;i>>0}return s},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],o=n+e[t+1]>>>0,s=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,o,s,a){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,o,s,a){return t+n+o+a>>>0},t.sum64_5_hi=function(e,t,r,n,i,o,s,a,c,u){var f=0,l=t;return f+=(l=l+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,o,s,a,c,u){return t+n+o+a+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},70248:e=>{e.exports=function(e){if(!e)throw Error("hashlru must have a max value, of type number, greater than 0");var t=0,r=Object.create(null),n=Object.create(null);function i(i,o){r[i]=o,++t>=e&&(t=0,n=r,r=Object.create(null))}return{has:function(e){return void 0!==r[e]||void 0!==n[e]},remove:function(e){void 0!==r[e]&&(r[e]=void 0),void 0!==n[e]&&(n[e]=void 0)},get:function(e){var t=r[e];return void 0!==t?t:void 0!==(t=n[e])?(i(e,t),t):void 0},set:function(e,t){void 0!==r[e]?r[e]=t:i(e,t)},clear:function(){r=Object.create(null),n=Object.create(null)}}}},2156:(e,t,r)=>{"use strict";var n=r(33715),i=r(34504),o=r(79746);function s(e){if(!(this instanceof s))return new s(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=s,s.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},s.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!=typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length{t.read=function(e,t,r,n,i){var o,s,a=8*i-n-1,c=(1<>1,f=-7,l=r?i-1:0,h=r?-1:1,d=e[t+l];for(l+=h,o=d&(1<<-f)-1,d>>=-f,f+=a;f>0;o=256*o+e[t+l],l+=h,f-=8);for(s=o&(1<<-f)-1,o>>=-f,f+=n;f>0;s=256*s+e[t+l],l+=h,f-=8);if(0===o)o=1-u;else{if(o===c)return s?NaN:1/0*(d?-1:1);s+=Math.pow(2,n),o-=u}return(d?-1:1)*s*Math.pow(2,o-n)},t.write=function(e,t,r,n,i,o){var s,a,c,u=8*o-i-1,f=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:o-1,p=n?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=f):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+l>=1?h/c:h*Math.pow(2,1-l))*c>=2&&(s++,c/=2),s+l>=f?(a=0,s=f):s+l>=1?(a=(t*c-1)*Math.pow(2,i),s+=l):(a=t*Math.pow(2,l-1)*Math.pow(2,i),s=0));i>=8;e[r+d]=255&a,d+=p,a/=256,i-=8);for(s=s<0;e[r+d]=255&s,d+=p,s/=256,u-=8);e[r+d-p]|=128*y}},95602:e=>{"use strict";e.exports=(e,t=1,r)=>{if(r={indent:" ",includeEmptyLines:!1,...r},"string"!=typeof e)throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof e}\``);if("number"!=typeof t)throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof t}\``);if("string"!=typeof r.indent)throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof r.indent}\``);if(0===t)return e;const n=r.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return e.replace(n,r.indent.repeat(t))}},35717:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},91843:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.v6=t.AddressError=t.Address6=t.Address4=void 0;var s=r(62507);Object.defineProperty(t,"Address4",{enumerable:!0,get:function(){return s.Address4}});var a=r(76862);Object.defineProperty(t,"Address6",{enumerable:!0,get:function(){return a.Address6}});var c=r(64762);Object.defineProperty(t,"AddressError",{enumerable:!0,get:function(){return c.AddressError}});var u=o(r(16454));t.v6={helpers:u}},64762:function(e,t){"use strict";var r,n=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)});Object.defineProperty(t,"__esModule",{value:!0}),t.AddressError=void 0;var i=function(e){function t(t,r){var n=e.call(this,t)||this;return n.name="AddressError",null!==r&&(n.parseMessage=r),n}return n(t,e),t}(Error);t.AddressError=i},72029:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isCorrect=t.isInSubnet=void 0,t.isInSubnet=function(e){return!(this.subnetMaska.BITS)throw new c.AddressError("Invalid subnet mask.");e=e.replace(a.RE_SUBNET_STRING,"")}this.addressMinusSuffix=e,this.parsedAddress=this.parse(e)}return e.isValid=function(t){try{return new e(t),!0}catch(e){return!1}},e.prototype.parse=function(e){var t=e.split(".");if(!e.match(a.RE_ADDRESS))throw new c.AddressError("Invalid IPv4 address.");return t},e.prototype.correctForm=function(){return this.parsedAddress.map((function(e){return parseInt(e,10)})).join(".")},e.fromHex=function(t){var r,n=t.replace(/:/g,"").padStart(8,"0"),i=[];for(r=0;r<8;r+=2){var o=n.slice(r,r+2);i.push(parseInt(o,16))}return new e(i.join("."))},e.fromInteger=function(t){return e.fromHex(t.toString(16))},e.fromArpa=function(t){return new e(t.replace(/(\.in-addr\.arpa)?\.$/,"").split(".").reverse().join("."))},e.prototype.toHex=function(){return this.parsedAddress.map((function(e){return f.sprintf("%02x",parseInt(e,10))})).join(":")},e.prototype.toArray=function(){return this.parsedAddress.map((function(e){return parseInt(e,10)}))},e.prototype.toGroup6=function(){var e,t=[];for(e=0;e%s.%s',e.slice(0,2).join("."),e.slice(2,4).join(".")))},e}();t.Address4=l},76862:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},s=this&&this.__spreadArray||function(e,t){for(var r=0,n=t.length,i=e.length;r$1$2')).replace(/^(0{1,})(0)$/,'$1$2')}function m(e){return y.sprintf("%04x",parseInt(e,16))}function v(e){return 255&e}var w=function(){function e(e,t){this.addressMinusSuffix="",this.parsedSubnet="",this.subnet="/128",this.subnetMask=128,this.v4=!1,this.zone="",this.isInSubnet=a.isInSubnet,this.isCorrect=a.isCorrect(u.BITS),this.groups=void 0===t?u.GROUPS:t,this.address=e;var r=u.RE_SUBNET_STRING.exec(e);if(r){if(this.parsedSubnet=r[0].replace("/",""),this.subnetMask=parseInt(this.parsedSubnet,10),this.subnet="/"+this.subnetMask,Number.isNaN(this.subnetMask)||this.subnetMask<0||this.subnetMask>u.BITS)throw new d.AddressError("Invalid subnet mask.");e=e.replace(u.RE_SUBNET_STRING,"")}else if(/\//.test(e))throw new d.AddressError("Invalid subnet mask.");var n=u.RE_ZONE_STRING.exec(e);n&&(this.zone=n[0],e=e.replace(u.RE_ZONE_STRING,"")),this.addressMinusSuffix=e,this.parsedAddress=this.parse(this.addressMinusSuffix)}return e.isValid=function(t){try{return new e(t),!0}catch(e){return!1}},e.fromBigInteger=function(t){var r,n=t.toString(16).padStart(32,"0"),i=[];for(r=0;r65536)&&(i=null):i=null,{address:new e(r),port:i}},e.fromAddress4=function(t){var r=new l.Address4(t),n=u.BITS-(c.BITS-r.subnetMask);return new e("::ffff:"+r.correctForm()+"/"+n)},e.fromArpa=function(t){var r=t.replace(/(\.ip6\.arpa)?\.$/,"");if(63!==r.length)throw new d.AddressError("Invalid 'ip6.arpa' form.");for(var n=r.split(".").reverse(),i=7;i>0;i--){var o=4*i;n.splice(o,0,":")}return new e(r=n.join(""))},e.prototype.microsoftTranscription=function(){return y.sprintf("%s.ipv6-literal.net",this.correctForm().replace(/:/g,"-"))},e.prototype.mask=function(e){return void 0===e&&(e=this.subnetMask),this.getBitsBase2(0,e)},e.prototype.possibleSubnets=function(e){void 0===e&&(e=128);var t=u.BITS-this.subnetMask-Math.abs(e-u.BITS);return t<0?"0":function(e){for(var t=/(\d+)(\d{3})/;t.test(e);)e=e.replace(t,"$1,$2");return e}(new p.BigInteger("2",10).pow(t).toString(10))},e.prototype._startAddress=function(){return new p.BigInteger(this.mask()+"0".repeat(u.BITS-this.subnetMask),2)},e.prototype.startAddress=function(){return e.fromBigInteger(this._startAddress())},e.prototype.startAddressExclusive=function(){var t=new p.BigInteger("1");return e.fromBigInteger(this._startAddress().add(t))},e.prototype._endAddress=function(){return new p.BigInteger(this.mask()+"1".repeat(u.BITS-this.subnetMask),2)},e.prototype.endAddress=function(){return e.fromBigInteger(this._endAddress())},e.prototype.endAddressExclusive=function(){var t=new p.BigInteger("1");return e.fromBigInteger(this._endAddress().subtract(t))},e.prototype.getScope=function(){var e=u.SCOPES[this.getBits(12,16).intValue()];return"Global unicast"===this.getType()&&"Link local"!==e&&(e="Global"),e||"Unknown"},e.prototype.getType=function(){for(var t=0,r=Object.keys(u.TYPES);t0?e.omitSuffix?r:y.sprintf("%s.ip6.arpa.",r):e.omitSuffix?"":"ip6.arpa."},e.prototype.correctForm=function(){var e,t=[],r=0,n=[];for(e=0;e0&&(r>1&&n.push([e-r,e-1]),r=0)}r>1&&n.push([this.parsedAddress.length-r,this.parsedAddress.length-1]);var o=n.map((function(e){return e[1]-e[0]+1}));if(n.length>0){var s=o.indexOf(Math.max.apply(Math,o));t=function(e,t){var r,n=[],i=[];for(r=0;rt[1]&&i.push(e[r]);return n.concat(["compact"]).concat(i)}(this.parsedAddress,n[s])}else t=this.parsedAddress;for(e=0;e1?"s":"",t.join("")),e.replace(u.RE_BAD_CHARACTERS,'$1'));var r=e.match(u.RE_BAD_ADDRESS);if(r)throw new d.AddressError(y.sprintf("Address failed regex: %s",r.join("")),e.replace(u.RE_BAD_ADDRESS,'$1'));var n=[],i=e.split("::");if(2===i.length){var o=i[0].split(":"),s=i[1].split(":");1===o.length&&""===o[0]&&(o=[]),1===s.length&&""===s[0]&&(s=[]);var a=this.groups-(o.length+s.length);if(!a)throw new d.AddressError("Error parsing groups");this.elidedGroups=a,this.elisionBegin=o.length,this.elisionEnd=o.length+this.elidedGroups,n=n.concat(o);for(var c=0;c=0;o--)n=n.add(i.multiply(new p.BigInteger(t[o].toString(10),10))),i=i.multiply(r);return e.fromBigInteger(n)},e.prototype.isCanonical=function(){return this.addressMinusSuffix===this.canonicalForm()},e.prototype.isLinkLocal=function(){return"1111111010000000000000000000000000000000000000000000000000000000"===this.getBitsBase2(0,64)},e.prototype.isMulticast=function(){return"Multicast"===this.getType()},e.prototype.is4=function(){return this.v4},e.prototype.isTeredo=function(){return this.isInSubnet(new e("2001::/32"))},e.prototype.is6to4=function(){return this.isInSubnet(new e("2002::/16"))},e.prototype.isLoopback=function(){return"Loopback"===this.getType()},e.prototype.href=function(e){return e=void 0===e?"":y.sprintf(":%s",e),y.sprintf("http://[%s]%s/",this.correctForm(),e)},e.prototype.link=function(e){e||(e={}),void 0===e.className&&(e.className=""),void 0===e.prefix&&(e.prefix="/#address="),void 0===e.v4&&(e.v4=!1);var t=this.correctForm;return e.v4&&(t=this.to4in6),e.className?y.sprintf('%2$s',e.prefix,t.call(this),e.className):y.sprintf('%2$s',e.prefix,t.call(this))},e.prototype.group=function(){if(0===this.elidedGroups)return f.simpleGroup(this.address).join(":");g("number"==typeof this.elidedGroups),g("number"==typeof this.elisionBegin);var e=[],t=this.address.split("::"),r=t[0],n=t[1];r.length?e.push.apply(e,f.simpleGroup(r)):e.push("");for(var i=["hover-group"],o=this.elisionBegin;o',i.join(" "))),n.length?e.push.apply(e,f.simpleGroup(n,this.elisionEnd)):e.push(""),this.is4()&&(g(this.address4 instanceof l.Address4),e.pop(),e.push(this.address4.groupForV6())),e.join(":")},e.prototype.regularExpressionString=function(t){void 0===t&&(t=!1);var r=[],n=new e(this.correctForm());if(0===n.elidedGroups)r.push(h.simpleRegularExpression(n.parsedAddress));else if(n.elidedGroups===u.GROUPS)r.push(h.possibleElisions(u.GROUPS));else{var i=n.address.split("::");i[0].length&&r.push(h.simpleRegularExpression(i[0].split(":"))),g("number"==typeof n.elidedGroups),r.push(h.possibleElisions(n.elidedGroups,0!==i[0].length,0!==i[1].length)),i[1].length&&r.push(h.simpleRegularExpression(i[1].split(":"))),r=[r.join(":")]}return t||(r=s(s(["(?=^|",h.ADDRESS_BOUNDARY,"|[^\\w\\:])("],r),[")(?=[^\\w\\:]|",h.ADDRESS_BOUNDARY,"|$)"])),r.join("")},e.prototype.regularExpression=function(e){return void 0===e&&(e=!1),new RegExp(this.regularExpressionString(e),"i")},e}();t.Address6=w},37802:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RE_SUBNET_STRING=t.RE_ADDRESS=t.GROUPS=t.BITS=void 0,t.BITS=32,t.GROUPS=4,t.RE_ADDRESS=/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/g,t.RE_SUBNET_STRING=/\/\d{1,2}$/},88521:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RE_URL_WITH_PORT=t.RE_URL=t.RE_ZONE_STRING=t.RE_SUBNET_STRING=t.RE_BAD_ADDRESS=t.RE_BAD_CHARACTERS=t.TYPES=t.SCOPES=t.GROUPS=t.BITS=void 0,t.BITS=128,t.GROUPS=8,t.SCOPES={0:"Reserved",1:"Interface local",2:"Link local",4:"Admin local",5:"Site local",8:"Organization local",14:"Global",15:"Reserved"},t.TYPES={"ff01::1/128":"Multicast (All nodes on this interface)","ff01::2/128":"Multicast (All routers on this interface)","ff02::1/128":"Multicast (All nodes on this link)","ff02::2/128":"Multicast (All routers on this link)","ff05::2/128":"Multicast (All routers in this site)","ff02::5/128":"Multicast (OSPFv3 AllSPF routers)","ff02::6/128":"Multicast (OSPFv3 AllDR routers)","ff02::9/128":"Multicast (RIP routers)","ff02::a/128":"Multicast (EIGRP routers)","ff02::d/128":"Multicast (PIM routers)","ff02::16/128":"Multicast (MLDv2 reports)","ff01::fb/128":"Multicast (mDNSv6)","ff02::fb/128":"Multicast (mDNSv6)","ff05::fb/128":"Multicast (mDNSv6)","ff02::1:2/128":"Multicast (All DHCP servers and relay agents on this link)","ff05::1:2/128":"Multicast (All DHCP servers and relay agents in this site)","ff02::1:3/128":"Multicast (All DHCP servers on this link)","ff05::1:3/128":"Multicast (All DHCP servers in this site)","::/128":"Unspecified","::1/128":"Loopback","ff00::/8":"Multicast","fe80::/10":"Link-local unicast"},t.RE_BAD_CHARACTERS=/([^0-9a-f:/%])/gi,t.RE_BAD_ADDRESS=/([0-9a-f]{5,}|:{3,}|[^:]:$|^:[^:]|\/$)/gi,t.RE_SUBNET_STRING=/\/\d{1,3}(?=%|$)/,t.RE_ZONE_STRING=/%.*$/,t.RE_URL=new RegExp(/^\[{0,1}([0-9a-f:]+)\]{0,1}/),t.RE_URL_WITH_PORT=new RegExp(/\[([0-9a-f:]+)\]:([0-9]{1,5})/)},16454:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.simpleGroup=t.spanLeadingZeroes=t.spanAll=t.spanAllZeroes=void 0;var n=r(8975);function i(e){return e.replace(/(0+)/g,'$1')}function o(e){return e.replace(/^(0+)/,'$1')}t.spanAllZeroes=i,t.spanAll=function(e,t){return void 0===t&&(t=0),e.split("").map((function(e,r){return n.sprintf('%s',e,r+t,i(e))})).join("")},t.spanLeadingZeroes=function(e){return e.split(":").map((function(e){return o(e)})).join(":")},t.simpleGroup=function(e,t){return void 0===t&&(t=0),e.split(":").map((function(e,r){return/group-v4/.test(e)?e:n.sprintf('%s',r+t,o(e))}))}},34489:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),o=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.possibleElisions=t.simpleRegularExpression=t.ADDRESS_BOUNDARY=t.padGroup=t.groupPossibilities=void 0;var s=o(r(88521)),a=r(8975);function c(e){return a.sprintf("(%s)",e.join("|"))}function u(e){return e.length<4?a.sprintf("0{0,%d}%s",4-e.length,e):e}t.groupPossibilities=c,t.padGroup=u,t.ADDRESS_BOUNDARY="[^A-Fa-f0-9:]",t.simpleRegularExpression=function(e){var t=[];e.forEach((function(e,r){0===parseInt(e,16)&&t.push(r)}));var r=t.map((function(t){return e.map((function(e,r){if(r===t){var n=0===r||r===s.GROUPS-1?":":"";return c([u(e),n])}return u(e)})).join(":")}));return r.push(e.map(u).join(":")),c(r)},t.possibleElisions=function(e,t,r){var n=t?"":":",i=r?"":":",o=[];t||r||o.push("::"),t&&r&&o.push(""),(r&&!t||!r&&t)&&o.push(":"),o.push(a.sprintf("%s(:0{1,4}){1,%d}",n,e-1)),o.push(a.sprintf("(0{1,4}:){1,%d}%s",e-1,i)),o.push(a.sprintf("(0{1,4}:){%d}0{1,4}",e-1));for(var s=1;s{"use strict";const t="[a-fA-F\\d:]",r=e=>e&&e.includeBoundaries?`(?:(?<=\\s|^)(?=${t})|(?<=${t})(?=\\s|$))`:"",n="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",i="[a-fA-F\\d]{1,4}",o=`\n(?:\n(?:${i}:){7}(?:${i}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\n(?:${i}:){6}(?:${n}|:${i}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\n(?:${i}:){5}(?::${n}|(?::${i}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\n(?:${i}:){4}(?:(?::${i}){0,1}:${n}|(?::${i}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\n(?:${i}:){3}(?:(?::${i}){0,2}:${n}|(?::${i}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\n(?:${i}:){2}(?:(?::${i}){0,3}:${n}|(?::${i}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\n(?:${i}:){1}(?:(?::${i}){0,4}:${n}|(?::${i}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\n(?::(?:(?::${i}){0,5}:${n}|(?::${i}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\n`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),s=new RegExp(`(?:^${n}$)|(?:^${o}$)`),a=new RegExp(`^${n}$`),c=new RegExp(`^${o}$`),u=e=>e&&e.exact?s:new RegExp(`(?:${r(e)}${n}${r(e)})|(?:${r(e)}${o}${r(e)})`,"g");u.v4=e=>e&&e.exact?a:new RegExp(`${r(e)}${n}${r(e)}`,"g"),u.v6=e=>e&&e.exact?c:new RegExp(`${r(e)}${o}${r(e)}`,"g"),e.exports=u},56512:function(e){!function(t){"use strict";const r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp(`^${r}\\.${r}\\.${r}\\.${r}$`,"i"),threeOctet:new RegExp(`^${r}\\.${r}\\.${r}$`,"i"),twoOctet:new RegExp(`^${r}\\.${r}$`,"i"),longValue:new RegExp(`^${r}$`,"i")},i=new RegExp("^0[0-7]+$","i"),o=new RegExp("^0x[a-f0-9]+$","i"),s="%[0-9a-z]{1,}",a="(?:[0-9a-f]+::?)+",c={zoneIndex:new RegExp(s,"i"),native:new RegExp(`^(::)?(${a})?([0-9a-f]+)?(::)?(${s})?$`,"i"),deprecatedTransitional:new RegExp(`^(?:::)(${r}\\.${r}\\.${r}\\.${r}(${s})?)$`,"i"),transitional:new RegExp(`^((?:${a})|(?:::)(?:${a})?)${r}\\.${r}\\.${r}\\.${r}(${s})?$`,"i")};function u(e,t){if(e.indexOf("::")!==e.lastIndexOf("::"))return null;let r,n,i=0,o=-1,s=(e.match(c.zoneIndex)||[])[0];for(s&&(s=s.substring(1),e=e.replace(/%.+$/,""));(o=e.indexOf(":",o+1))>=0;)i++;if("::"===e.substr(0,2)&&i--,"::"===e.substr(-2,2)&&i--,i>t)return null;for(n=t-i,r=":";n--;)r+="0:";return":"===(e=e.replace("::",r))[0]&&(e=e.slice(1)),":"===e[e.length-1]&&(e=e.slice(0,-1)),{parts:t=function(){const t=e.split(":"),r=[];for(let e=0;e0;){if(i=r-n,i<0&&(i=0),e[o]>>i!=t[o]>>i)return!1;n-=r,o+=1}return!0}function l(e){if(o.test(e))return parseInt(e,16);if("0"===e[0]&&!isNaN(parseInt(e[1],10))){if(i.test(e))return parseInt(e,8);throw new Error(`ipaddr: cannot parse ${e} as octal`)}return parseInt(e,10)}function h(e,t){for(;e.length=0;n-=1){if(i=this.octets[n],!(i in r))return null;if(o=r[i],t&&0!==o)return null;8!==o&&(t=!0),e+=o}return 32-e},e.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},e.prototype.toByteArray=function(){return this.octets.slice(0)},e.prototype.toIPv4MappedAddress=function(){return d.IPv6.parse(`::ffff:${this.toString()}`)},e.prototype.toNormalizedString=function(){return this.toString()},e.prototype.toString=function(){return this.octets.join(".")},e}(),d.IPv4.broadcastAddressFromCIDR=function(e){try{const t=this.parseCIDR(e),r=t[0].toByteArray(),n=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[];let o=0;for(;o<4;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(e){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.isIPv4=function(e){return null!==this.parser(e)},d.IPv4.isValid=function(e){try{return new this(this.parser(e)),!0}catch(e){return!1}},d.IPv4.isValidFourPartDecimal=function(e){return!(!d.IPv4.isValid(e)||!e.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},d.IPv4.networkAddressFromCIDR=function(e){let t,r,n,i,o;try{for(t=this.parseCIDR(e),n=t[0].toByteArray(),o=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],r=0;r<4;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(e){throw new Error("ipaddr: the address does not have IPv4 CIDR format")}},d.IPv4.parse=function(e){const t=this.parser(e);if(null===t)throw new Error("ipaddr: string is not formatted like an IPv4 Address");return new this(t)},d.IPv4.parseCIDR=function(e){let t;if(t=e.match(/^(.+)\/(\d+)$/)){const e=parseInt(t[2]);if(e>=0&&e<=32){const r=[this.parse(t[1]),e];return Object.defineProperty(r,"toString",{value:function(){return this.join("/")}}),r}}throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},d.IPv4.parser=function(e){let t,r,i;if(t=e.match(n.fourOctet))return function(){const e=t.slice(1,6),n=[];for(let t=0;t4294967295||i<0)throw new Error("ipaddr: address outside defined range");return function(){const e=[];let t;for(t=0;t<=24;t+=8)e.push(i>>t&255);return e}().reverse()}return(t=e.match(n.twoOctet))?function(){const e=t.slice(1,4),r=[];if(i=l(e[1]),i>16777215||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(e[0])),r.push(i>>16&255),r.push(i>>8&255),r.push(255&i),r}():(t=e.match(n.threeOctet))?function(){const e=t.slice(1,5),r=[];if(i=l(e[2]),i>65535||i<0)throw new Error("ipaddr: address outside defined range");return r.push(l(e[0])),r.push(l(e[1])),r.push(i>>8&255),r.push(255&i),r}():null},d.IPv4.subnetMaskFromPrefixLength=function(e){if((e=parseInt(e))<0||e>32)throw new Error("ipaddr: invalid IPv4 prefix length");const t=[0,0,0,0];let r=0;const n=Math.floor(e/8);for(;r=0;o-=1){if(n=this.parts[o],!(n in r))return null;if(i=r[n],t&&0!==i)return null;16!==i&&(t=!0),e+=i}return 128-e},e.prototype.range=function(){return d.subnetMatch(this,this.SpecialRanges)},e.prototype.toByteArray=function(){let e;const t=[],r=this.parts;for(let n=0;n>8),t.push(255&e);return t},e.prototype.toFixedLengthString=function(){const e=function(){const e=[];for(let t=0;t>8,255&t,r>>8,255&r])},e.prototype.toNormalizedString=function(){const e=function(){const e=[];for(let t=0;ti&&(n=r.index,i=r[0].length);return i<0?t:`${t.substring(0,n)}::${t.substring(n+i)}`},e.prototype.toString=function(){return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/,"::")},e}(),d.IPv6.broadcastAddressFromCIDR=function(e){try{const t=this.parseCIDR(e),r=t[0].toByteArray(),n=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[];let o=0;for(;o<16;)i.push(parseInt(r[o],10)|255^parseInt(n[o],10)),o++;return new this(i)}catch(e){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${e})`)}},d.IPv6.isIPv6=function(e){return null!==this.parser(e)},d.IPv6.isValid=function(e){if("string"==typeof e&&-1===e.indexOf(":"))return!1;try{const t=this.parser(e);return new this(t.parts,t.zoneId),!0}catch(e){return!1}},d.IPv6.networkAddressFromCIDR=function(e){let t,r,n,i,o;try{for(t=this.parseCIDR(e),n=t[0].toByteArray(),o=this.subnetMaskFromPrefixLength(t[1]).toByteArray(),i=[],r=0;r<16;)i.push(parseInt(n[r],10)&parseInt(o[r],10)),r++;return new this(i)}catch(e){throw new Error(`ipaddr: the address does not have IPv6 CIDR format (${e})`)}},d.IPv6.parse=function(e){const t=this.parser(e);if(null===t.parts)throw new Error("ipaddr: string is not formatted like an IPv6 Address");return new this(t.parts,t.zoneId)},d.IPv6.parseCIDR=function(e){let t,r,n;if((r=e.match(/^(.+)\/(\d+)$/))&&(t=parseInt(r[2]),t>=0&&t<=128))return n=[this.parse(r[1]),t],Object.defineProperty(n,"toString",{value:function(){return this.join("/")}}),n;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},d.IPv6.parser=function(e){let t,r,n,i,o,s;if(n=e.match(c.deprecatedTransitional))return this.parser(`::ffff:${n[1]}`);if(c.native.test(e))return u(e,8);if((n=e.match(c.transitional))&&(s=n[6]||"",t=u(n[1].slice(0,-1)+s,6),t.parts)){for(o=[parseInt(n[2]),parseInt(n[3]),parseInt(n[4]),parseInt(n[5])],r=0;r128)throw new Error("ipaddr: invalid IPv6 prefix length");const t=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];let r=0;const n=Math.floor(e/8);for(;r{e.exports=function(e){return null!=e&&null!=e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},59134:(e,t,r)=>{var n=r(34155);e.exports=function(){return"undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||!(void 0===n||"object"!=typeof n.versions||!n.versions.electron)||"object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent.indexOf("Electron")>=0}},5003:(e,t,r)=>{"use strict";const n=r(1476),i=e=>n({exact:!0}).test(e);i.v4=e=>n.v4({exact:!0}).test(e),i.v6=e=>n.v6({exact:!0}).test(e),i.version=e=>i(e)?i.v4(e)?4:6:void 0,e.exports=i},51890:e=>{"use strict";e.exports=function(e){return/^127\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/i.test(e)||/^::1$/.test(e)}},6898:e=>{"use strict";e.exports=e=>!!e&&("symbol"==typeof Symbol.observable&&"function"==typeof e[Symbol.observable]?e===e[Symbol.observable]():"function"==typeof e["@@observable"]&&e===e["@@observable"]())},33310:e=>{"use strict";e.exports=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}},1914:e=>{"use strict";const t=65536;e.exports=function(e){const r=new Uint8Array(e);let n=0;if(e>0)if(e>t)for(;ne?(crypto.getRandomValues(r.subarray(n,n+(e-n))),n+=e-n):(crypto.getRandomValues(r.subarray(n,n+t)),n+=t);else crypto.getRandomValues(r);return r}},17745:(e,t,r)=>{"use strict";const{URLWithLegacySupport:n,format:i,URLSearchParams:o,defaultBase:s}=r(82049),a=r(15939);e.exports={URL:n,URLSearchParams:o,format:i,relative:a,defaultBase:s}},15939:(e,t,r)=>{"use strict";const{URLWithLegacySupport:n,format:i}=r(82049);e.exports=(e,t={},r={},o)=>{let s,a=t.protocol?t.protocol.replace(":",""):"http";a=(r[a]||o||a)+":";try{s=new n(e)}catch(e){s={}}const c=Object.assign({},t,{protocol:a||s.protocol,host:t.host||s.host});return new n(e,i(c)).toString()}},82049:e=>{"use strict";const t="undefined"!=typeof navigator&&"ReactNative"===navigator.product,r=self.URL,n=t?"http://localhost":self.location?self.location.protocol+"//"+self.location.host:"";e.exports={URLWithLegacySupport:class{constructor(e="",t=n){this.super=new r(e,t),this.path=this.pathname+this.search,this.auth=this.username&&this.password?this.username+":"+this.password:null,this.query=this.search&&this.search.startsWith("?")?this.search.slice(1):null}get hash(){return this.super.hash}get host(){return this.super.host}get hostname(){return this.super.hostname}get href(){return this.super.href}get origin(){return this.super.origin}get password(){return this.super.password}get pathname(){return this.super.pathname}get port(){return this.super.port}get protocol(){return this.super.protocol}get search(){return this.super.search}get searchParams(){return this.super.searchParams}get username(){return this.super.username}set hash(e){this.super.hash=e}set host(e){this.super.host=e}set hostname(e){this.super.hostname=e}set href(e){this.super.href=e}set password(e){this.super.password=e}set pathname(e){this.super.pathname=e}set port(e){this.super.port=e}set protocol(e){this.super.protocol=e}set search(e){this.super.search=e}set username(e){this.super.username=e}static createObjectURL(e){return r.createObjectURL(e)}static revokeObjectURL(e){r.revokeObjectURL(e)}toJSON(){return this.super.toJSON()}toString(){return this.super.toString()}format(){return this.toString()}},URLSearchParams:self.URLSearchParams,defaultBase:n,format:function(e){if("string"==typeof e)return new r(e).toString();if(!(e instanceof r)){const t=e.username&&e.password?`${e.username}:${e.password}@`:"",r=e.auth?e.auth+"@":"",n=e.port?":"+e.port:"",i=e.protocol?e.protocol+"//":"",o=e.host||"",s=e.hostname||"",a=e.search||(e.query?"?"+e.query:""),c=e.hash||"",u=e.pathname||"";return`${i}${t||r}${o||s+n}${e.path||u+a}${c}`}}}},96653:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668);e.exports=async function*(e){for await(const t of e)n.isBuffer(t)?yield t:i.isBufferList(t)?yield t.slice():yield n.from(t)},e.exports.toBuffer=e.exports,e.exports.toList=async function*(e){for await(const t of e)n.isBuffer(t)?yield(new i).append(t):i.isBufferList(t)?yield t:yield(new i).append(n.from(t))}},64593:e=>{"use strict";e.exports=async e=>{for await(const t of e);}},55565:e=>{"use strict";e.exports=async function*(e,t){for await(const r of e)await t(r)&&(yield r)}},72262:e=>{"use strict";e.exports=async e=>{for await(const t of e)return t}},52261:(e,t,r)=>{"use strict";const n=r(53469),i=r(84975),o=r(63931);e.exports=e=>{const t=i(),r=n(e.source),s=o();let a;const c=e.sink(async function*(){yield*t;const e=await s.promise;yield*e}());return c.catch((e=>{a=e})),{reader:r,writer:t,stream:{sink:e=>a?Promise.reject(a):(s.resolve(e),c),source:r},rest:()=>t.end(),write:t.push,read:async()=>(await r.next()).value}}},33635:(e,t,r)=>{"use strict";const{Buffer:n}=r(12836),i=Symbol.for("BufferList");function o(e){if(!(this instanceof o))return new o(e);o._init.call(this,e)}o._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},o.prototype._new=function(e){return new o(e)},o.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;rthis.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},o.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},o.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const o=!!e,s=this._offset(r),a=i-r;let c=a,u=o&&t||0,f=s[1];if(0===r&&i===this.length){if(!o)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;tr)){this._bufs[t].copy(e,u,f,f+c),u+=r;break}this._bufs[t].copy(e,u,f),u+=r,c-=r,f&&(f=0)}return e.length>u?e.slice(0,u):e},o.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},o.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},o.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},o.prototype.duplicate=function(){const e=this._new();for(let t=0;tthis.length?this.length:t;const i=this._offset(t);let o=i[0],s=i[1];for(;o=e.length){const r=t.indexOf(e,s);if(-1!==r)return this._reverseOffset([o,r]);s=t.length-e.length+1}else{const t=this._reverseOffset([o,s]);if(this._match(t,e))return t;s++}s=0}return-1},o.prototype._match=function(e,t){if(this.length-e{"use strict";var n=r(79742),i=r(80645),o="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;var s=2147483647;function a(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return l(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|y(e,t),n=a(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(V(e,Uint8Array)){var t=new Uint8Array(e);return d(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(V(e,ArrayBuffer)||e&&V(e.buffer,ArrayBuffer))return d(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(V(e,SharedArrayBuffer)||e&&V(e.buffer,SharedArrayBuffer)))return d(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);var i=function(e){if(c.isBuffer(e)){var t=0|p(e.length),r=a(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||F(e.length)?a(0):h(e):"Buffer"===e.type&&Array.isArray(e.data)?h(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function f(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function l(e){return f(e),a(e<0?0:0|p(e))}function h(e){for(var t=e.length<0?0:0|p(e.length),r=a(t),n=0;n=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||V(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return U(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return k(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return P(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return T(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function b(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function m(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),F(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:v(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):v(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,r,n,i){var o,s=1,a=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,r/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var f=-1;for(o=r;oa&&(r=a-c),o=r;o>=0;o--){for(var l=!0,h=0;hi&&(n=i):n=i;var o=t.length;n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function T(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:u>223?3:u>191?2:1;if(i+l<=r)switch(l){case 1:u<128&&(f=u);break;case 2:128==(192&(o=e[i+1]))&&(c=(31&u)<<6|63&o)>127&&(f=c);break;case 3:o=e[i+1],s=e[i+2],128==(192&o)&&128==(192&s)&&(c=(15&u)<<12|(63&o)<<6|63&s)>2047&&(c<55296||c>57343)&&(f=c);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(c=(15&u)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&c<1114112&&(f=c)}null===f?(f=65533,l=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=l}return function(e){var t=e.length;if(t<=C)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?c.from(o).copy(n,i):Uint8Array.prototype.set.call(n,o,i);else{if(!c.isBuffer(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(n,i)}i+=o.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(V(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(t>>>=0),a=Math.min(o,s),u=this.slice(n,i),f=e.slice(t,r),l=0;l>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return E(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var C=4096;function P(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",o=t;or)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function O(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function N(e,t,r,n,o){return t=+t,r>>>=0,o||O(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function L(e,t,r,n,o){return t=+t,r>>>=0,o||O(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e],i=1,o=0;++o>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||x(e,t,this.length);for(var n=t,i=1,o=this[e+--n];n>0&&(i*=256);)o+=this[e+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||x(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||x(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return e>>>=0,t||x(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||x(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,e,t,r,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,e,t,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeFloatLE=function(e,t,r){return N(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return N(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return L(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return L(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function U(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function j(e,t,r,n){for(var i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function V(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function F(e){return e!=e}var q=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}()},65765:(e,t,r)=>{"use strict";const{Buffer:n}=r(12836),i=r(33635),o=r(72903),s=4194304,a=n.alloc(0),c="readLength",u="readData",f={[c]:(e,t,r,n)=>{let o;t=t.append(e);try{o=n.lengthDecoder(t)}catch(e){if(t.length>n.maxLengthLength)throw Object.assign(e,{message:"message length too long",code:"ERR_MSG_LENGTH_TOO_LONG"});if(e instanceof RangeError)return{mode:c,buffer:t};throw e}if(o>n.maxDataLength)throw Object.assign(new Error("message data too long"),{code:"ERR_MSG_DATA_TOO_LONG"});return e=t.shallowSlice(n.lengthDecoder.bytes),t=new i,n.onLength&&n.onLength(o),o<=0?(n.onData&&n.onData(a),{mode:c,chunk:e,buffer:t,data:a}):{mode:u,chunk:e,buffer:t,state:{dataLength:o}}},[u]:(e,t,r,n)=>{if((t=t.append(e)).lengtho?t.shallowSlice(o):null,t=new i,n.onData&&n.onData(s),{mode:c,chunk:e,buffer:t,data:s}}};function l(e){return(e=e||{}).lengthDecoder=e.lengthDecoder||o,e.maxLengthLength=e.maxLengthLength||8,e.maxDataLength=e.maxDataLength||s,t=>async function*(){let r,n=new i,o=c;for await(let i of t)for(;i;){const t=f[o](i,n,r,e);({mode:o,chunk:i,buffer:n,state:r}=t),t.data&&(yield t.data)}if(n.length)throw Object.assign(new Error("unexpected end of input"),{code:"ERR_UNEXPECTED_EOF"})}()}l.fromReader=(e,t)=>{t=t||{};let r=1;const n={[Symbol.asyncIterator](){return this},next:async()=>{try{return await e.next(r)}catch(e){if("ERR_UNDER_READ"===e.code)return{done:!0,value:null};throw e}finally{r=1}}};return t.onLength=e=>{r=e},l(t)(n)},e.exports=l,e.exports.MAX_LENGTH_LENGTH=8,e.exports.MAX_DATA_LENGTH=s},90278:(e,t,r)=>{"use strict";const{Buffer:n}=r(12836),i=r(33635),o=r(62354);function s(e){e=e||{};const t=Math.max(e.poolSize||10240,e.minPoolSize||8),r=e.lengthEncoder||o;return e=>async function*(){let o=n.alloc(t),s=0;for await(const a of e){r(a.length,o,s);const e=o.slice(s,s+r.bytes);s+=r.bytes,o.length-s<8&&(o=n.alloc(t),s=0),yield(new i).append(e).append(a)}}()}s.single=(e,t)=>{const r=(t=t||{}).lengthEncoder||o;return new i([r(e.length),e])},e.exports=s,e.exports.MIN_POOL_SIZE=8,e.exports.DEFAULT_POOL_SIZE=10240},48963:(e,t,r)=>{"use strict";t.encode=r(90278),t.decode=r(65765),t.varintEncode=r(62354),t.varintDecode=r(72903),t.int32BEEncode=r(71205),t.int32BEDecode=r(93380)},93380:e=>{"use strict";const t=e=>{if(e.length<4)throw RangeError("Could not decode int32BE");return e.readInt32BE(0)};t.bytes=4,e.exports=t},71205:(e,t,r)=>{"use strict";const{Buffer:n}=r(12836),i=(e,t,r)=>((t=t||n.allocUnsafe(4)).writeInt32BE(e,r),t);i.bytes=4,e.exports=i},72903:(e,t,r)=>{"use strict";const{Buffer:n}=r(12836),i=r(94676),o=e=>{const t=i.decode(n.isBuffer(e)?e:(r=e,new Proxy({},{get:(e,t)=>"l"===t[0]?r[t]:r.get(parseInt(t))})));var r;return o.bytes=i.decode.bytes,t};e.exports=o},62354:(e,t,r)=>{"use strict";const n=r(94676),{Buffer:i}=r(12836),o=(e,t,r)=>{const s=n.encode(e,t,r);return o.bytes=n.encode.bytes,t||i.from(s)};e.exports=o},32121:e=>{"use strict";e.exports=async function*(e,t){for await(const r of e)yield t(r)}},74014:(e,t,r)=>{"use strict";const n=r(84975);e.exports=async function*(...e){const t=n();setTimeout((async()=>{try{await Promise.all(e.map((async e=>{for await(const r of e)t.push(r)}))),t.end()}catch(e){t.end(e)}}),0),yield*t}},63184:(e,t,r)=>{var n=r(60154);e.exports=function(){var e=n(),t=n();return[{source:e.source,sink:t.sink},{source:t.source,sink:e.sink}]}},60154:(e,t,r)=>{"use strict";const n=r(22412);e.exports=function(){let e,t;return{sink:async r=>{if(e)throw new Error("already piped");e=n(r),t&&t(e)},source:{[Symbol.asyncIterator](){return this},next:()=>e?e.next():new Promise((e=>{t=r=>{t=null,e(r.next())}}))}}}},61962:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(19552),s=4194304,a=n.alloc(0),c="readLength",u="readData",f={[c]:(e,t,r,n)=>{let o;t=t.append(e);try{o=n.lengthDecoder(t)}catch(e){if(t.length>n.maxLengthLength)throw Object.assign(e,{message:"message length too long",code:"ERR_MSG_LENGTH_TOO_LONG"});if(e instanceof RangeError)return{mode:c,buffer:t,chunk:void 0,state:void 0,data:void 0};throw e}if(o>n.maxDataLength)throw Object.assign(new Error("message data too long"),{code:"ERR_MSG_DATA_TOO_LONG"});return e=t.shallowSlice(n.lengthDecoder.bytes),t=new i,n.onLength&&n.onLength(o),o<=0?(n.onData&&n.onData(a),{mode:c,chunk:e,buffer:t,data:a}):{mode:u,chunk:e,buffer:t,state:{dataLength:o},data:void 0}},[u]:(e,t,r,n)=>{if(t=t.append(e),!r)throw new Error("state is required");if(t.lengtho?t.shallowSlice(o):void 0;return t=new i,n.onData&&n.onData(s),{mode:c,chunk:a,buffer:t,state:void 0,data:s}}};function l(e){const t={lengthDecoder:(e=e||{}).lengthDecoder||o,maxLengthLength:e.maxLengthLength||8,maxDataLength:e.maxDataLength||s,onLength:e.onLength,onData:e.onData};return async function*(e){let r,n=new i,o=c;for await(const i of e){let e=i;for(;e;){const i=f[o](e,n,r,t);o=i.mode,e=i.chunk,n=i.buffer,r=i.state,i.data&&(yield i.data)}}if(n.length)throw Object.assign(new Error("unexpected end of input"),{code:"ERR_UNEXPECTED_EOF"})}}l.fromReader=(e,t)=>{let r=1;const n={[Symbol.asyncIterator](){return this},next:async()=>{try{return await e.next(r)}catch(e){if("ERR_UNDER_READ"===e.code)return{done:!0,value:null};throw e}finally{r=1}}};return l({...t||{},onLength:e=>{r=e}})(n)},e.exports=l,e.exports.MAX_LENGTH_LENGTH=8,e.exports.MAX_DATA_LENGTH=s},64095:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(55735);function s(e){e=e||{};const t=Math.max(e.poolSize||10240,e.minPoolSize||8),r=e.lengthEncoder||o;return async function*(e){let o=n.alloc(t),s=0;for await(const a of e){r(a.length,o,s);const e=o.slice(s,s+r.bytes);s+=r.bytes,o.length-s<8&&(o=n.alloc(t),s=0),yield(new i).append(e).append(a)}}}s.single=(e,t)=>{const r=(t=t||{}).lengthEncoder||o;return new i([r(e.length),e.slice()])},e.exports=s,e.exports.MIN_POOL_SIZE=8,e.exports.DEFAULT_POOL_SIZE=10240},85919:(e,t,r)=>{"use strict";t.encode=r(64095),t.decode=r(61962),t.varintEncode=r(55735),t.varintDecode=r(19552),t.int32BEEncode=r(51643),t.int32BEDecode=r(93058)},93058:e=>{"use strict";const t=e=>{if(e.length<4)throw RangeError("Could not decode int32BE");return e.readInt32BE(0)};t.bytes=4,e.exports=t},51643:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=(e,t,r)=>((t=t||n.allocUnsafe(4)).writeInt32BE(e,r),t);i.bytes=4,e.exports=i},19552:(e,t,r)=>{"use strict";const n=r(41186),{Buffer:i}=r(48764),o=e=>{const t=n.decode(i.isBuffer(e)?e:(r=e,new Proxy({},{get:(e,t)=>"l"===t[0]?r[t]:r.get(parseInt(t))})));var r;return o.bytes=n.decode.bytes,t};e.exports=o},55735:(e,t,r)=>{"use strict";const n=r(41186),{Buffer:i}=r(48764),o=(e,t,r)=>{const s=n.encode(e,t,r);return o.bytes=n.encode.bytes,t||i.from(s)};e.exports=o},46414:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},84347:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},41186:(e,t,r)=>{e.exports={encode:r(84347),decode:r(46414),encodingLength:r(94726)}},94726:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";const n=r(48738),i=r(52261),o=r(85919);e.exports=(e,t={})=>{const r=i(e),s=o.decode.fromReader(r.reader,t);let a=!1;const c={read:async e=>{const{value:t,done:n}=await r.reader.next(e);if(n&&t.length{const{value:e,done:t}=await s.next();if(a=t,!e)throw new Error("Value is null");return e},readPB:async e=>{const t=await c.readLP();if(!t)throw new Error("Value is null");const r=n(t)?t:t.slice();return e.decode(r)},write:e=>{r.writer.push(e)},writeLP:e=>{c.write(o.encode.single(e,t))},writePB:(e,t)=>{c.writeLP(t.encode(e))},pb:e=>({read:()=>c.readPB(e),write:t=>c.writePB(t,e)}),unwrap:()=>(r.rest(),r.stream)};return c}},60618:e=>{const t=(...e)=>{let t;for(;e.length;)t=e.shift()(t);return t},r=e=>e&&("function"==typeof e[Symbol.asyncIterator]||"function"==typeof e[Symbol.iterator]||"function"==typeof e.next),n=e=>e&&"function"==typeof e.sink&&r(e.source),i=e=>t=>(e.sink(t),e.source),o=(...e)=>{if(n(e[0])){const t=e[0];e[0]=()=>t.source}else if(r(e[0])){const t=e[0];e[0]=()=>t}if(e.length>1&&n(e[e.length-1])&&(e[e.length-1]=e[e.length-1].sink),e.length>2)for(let t=1;t{const n=r(91607);e.exports=e=>{let t;"function"==typeof(e=e||{})?(t=e,e={}):t=e.onEnd;let r,i,o,s=new n;const a=e=>i?i(e):(s.push(e),r),c=e=>o?r:a({done:!1,value:e}),u=e=>o?r:(o=!0,e?(e=>(s=new n,i?i({error:e}):(s.push({error:e}),r)))(e):a({done:!0}));if(r={[Symbol.asyncIterator](){return this},next:()=>{if(!s.isEmpty()){if(e.writev){let e;const t=[];for(;!s.isEmpty();){if(e=s.shift(),e.error)throw e.error;t.push(e.value)}return{done:e.done,value:t}}const t=s.shift();if(t.error)throw t.error;return t}return o?{done:!0}:new Promise(((t,n)=>{i=o=>(i=null,o.error?n(o.error):e.writev&&!o.done?t({done:o.done,value:[o.value]}):t(o),r)}))},return:()=>(s=new n,u(),{done:!0}),throw:e=>(u(e),{done:!0}),push:c,end:u},!t)return r;const f=r;return r={[Symbol.asyncIterator](){return this},next:()=>f.next(),throw:e=>(f.throw(e),t&&(t(e),t=null),{done:!0}),return:()=>(f.return(),t&&(t(),t=null),{done:!0}),push:c,end:e=>(f.end(e),t&&(t(e),t=null),r)},r}},53469:(e,t,r)=>{const n=r(9668);e.exports=e=>{const t=async function*(){let t=yield,r=new n;for await(const i of e)if(t)for(r.append(i);r.length>=t;){const e=r.shallowSlice(0,t);if(r.consume(t),t=yield e,!t){r.length&&(t=yield r,r=new n);break}}else t=yield r.append(i),r=new n;if(t)throw Object.assign(new Error(`stream ended before ${t} bytes became available`),{code:"ERR_UNDER_READ",buffer:r})}();return t.next(),t}},37939:e=>{"use strict";e.exports=async function*(e,t){let r=0;if(!(t<1))for await(const n of e)if(yield n,r++,r===t)return}},6476:(e,t,r)=>{"use strict";var n=r(78422),i=r(45413),o=r(16044);e.exports=function(e,t={}){const r="undefined"==typeof window?{}:window.location,s=o(e,r),a=new n(s,t.websocket),c=i(a,t);return c.remoteAddress=s,c.close=()=>new Promise(((e,t)=>{a.addEventListener("close",e),a.close()})),c.destroy=()=>{a.terminate?a.terminate():a.close()},c.socket=a,c},e.exports.connect=e.exports},45413:(e,t,r)=>{const n=r(41049),i=r(91252);e.exports=(e,t)=>{(t=t||{}).binaryType?e.binaryType=t.binaryType:t.binary&&(e.binaryType="arraybuffer");const r={sink:i(e,t),source:n(e,t),connected:()=>r.source.connected()};return r}},1434:e=>{e.exports=async e=>{if(e.readyState>=2)throw new Error("socket closed");if(1!==e.readyState)return new Promise(((t,r)=>{const n=e&&(e.removeEventListener||e.removeListener);function i(){"function"==typeof n&&(n.call(e,"open",o),n.call(e,"error",s))}function o(){i(),t()}function s(e){i(),r(e)}e.addEventListener("open",o),e.addEventListener("error",s)}))}},91252:(e,t,r)=>{const n=r(1434);e.exports=(e,t)=>((t=t||{}).closeOnEnd=!1!==t.closeOnEnd,async r=>{for await(const t of r){try{await n(e)}catch(e){if("socket closed"===e.message)break;throw e}e.send(t)}if(t.closeOnEnd&&e.readyState<=1)return new Promise(((t,r)=>{e.addEventListener("close",(e=>{if(e.wasClean||1006===e.code)t();else{const t=Object.assign(new Error("ws error"),{event:e});r(t)}})),setTimeout((()=>e.close()))}))})},41049:(e,t,r)=>{const{Buffer:n}=r(48764),{EventIterator:i}=r(90507);e.exports=e=>{const t=e.removeEventListener||e.removeListener,r=async function*(){const r=new i((({push:r,stop:n,fail:i})=>(e.addEventListener("message",r),e.addEventListener("error",i),e.addEventListener("close",n),()=>{t.call(e,"message",r),t.call(e,"error",i),t.call(e,"close",n)})),{highWaterMark:1/0});for await(const{data:e}of r)yield(o=e,o instanceof ArrayBuffer||null!=o&&null!=o.constructor&&"ArrayBuffer"===o.constructor.name&&"number"==typeof o.byteLength?n.from(e):e);var o}();let o,s=1===e.readyState;return e.addEventListener("open",(()=>{s=!0,o=null})),e.addEventListener("close",(()=>{s=!1,o=null})),e.addEventListener("error",(e=>{s||(o=e)})),r.connected=()=>new Promise(((r,n)=>{if(s)return r();if(o)return n(o);const i=r=>{t.call(e,"open",a),t.call(e,"error",c),r()},a=()=>i(r),c=e=>i((()=>n(e)));e.addEventListener("open",a),e.addEventListener("error",c)})),r}},78422:(e,t,r)=>{e.exports="undefined"==typeof WebSocket?r(89408):WebSocket},16044:(e,t,r)=>{const{relative:n}=r(17745),i={http:"ws",https:"wss"};e.exports=(e,t)=>n(e,t,i,"ws")},36077:function(e,t){(function(){var t;function r(e,t,r){null!=e&&("number"==typeof e?this.fromNumber(e,t,r):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function n(){return new r(null)}var i="undefined"!=typeof navigator;i&&"Microsoft Internet Explorer"==navigator.appName?(r.prototype.am=function(e,t,r,n,i,o){for(var s=32767&t,a=t>>15;--o>=0;){var c=32767&this[e],u=this[e++]>>15,f=a*c+u*s;i=((c=s*c+((32767&f)<<15)+r[n]+(1073741823&i))>>>30)+(f>>>15)+a*u+(i>>>30),r[n++]=1073741823&c}return i},t=30):i&&"Netscape"!=navigator.appName?(r.prototype.am=function(e,t,r,n,i,o){for(;--o>=0;){var s=t*this[e++]+r[n]+i;i=Math.floor(s/67108864),r[n++]=67108863&s}return i},t=26):(r.prototype.am=function(e,t,r,n,i,o){for(var s=16383&t,a=t>>14;--o>=0;){var c=16383&this[e],u=this[e++]>>14,f=a*c+u*s;i=((c=s*c+((16383&f)<<14)+r[n]+i)>>28)+(f>>14)+a*u,r[n++]=268435455&c}return i},t=28),r.prototype.DB=t,r.prototype.DM=(1<>>16)&&(e=t,r+=16),0!=(t=e>>8)&&(e=t,r+=8),0!=(t=e>>4)&&(e=t,r+=4),0!=(t=e>>2)&&(e=t,r+=2),0!=(t=e>>1)&&(e=t,r+=1),r}function h(e){this.m=e}function d(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,t+=16),0==(255&e)&&(e>>=8,t+=8),0==(15&e)&&(e>>=4,t+=4),0==(3&e)&&(e>>=2,t+=2),0==(1&e)&&++t,t}function v(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function w(){}function E(e){return e}function _(e){this.r2=n(),this.q3=n(),r.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}h.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},h.prototype.revert=function(e){return e},h.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},h.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},h.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},d.prototype.convert=function(e){var t=n();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(r.ZERO)>0&&this.m.subTo(t,t),t},d.prototype.revert=function(e){var t=n();return e.copyTo(t),this.reduce(t),t},d.prototype.reduce=function(e){for(;e.t<=this.mt2;)e[e.t++]=0;for(var t=0;t>15)*this.mpl&this.um)<<15)&e.DM;for(e[r=t+this.m.t]+=this.m.am(0,n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},d.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},d.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},r.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e[t]=this[t];e.t=this.t,e.s=this.s},r.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this[0]=e:e<-1?this[0]=e+this.DV:this.t=0},r.prototype.fromString=function(e,t){var n;if(16==t)n=4;else if(8==t)n=3;else if(256==t)n=8;else if(2==t)n=1;else if(32==t)n=5;else{if(4!=t)return void this.fromRadix(e,t);n=2}this.t=0,this.s=0;for(var i=e.length,o=!1,s=0;--i>=0;){var a=8==n?255&e[i]:u(e,i);a<0?"-"==e.charAt(i)&&(o=!0):(o=!1,0==s?this[this.t++]=a:s+n>this.DB?(this[this.t-1]|=(a&(1<>this.DB-s):this[this.t-1]|=a<=this.DB&&(s-=this.DB))}8==n&&0!=(128&e[0])&&(this.s=-1,s>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==e;)--this.t},r.prototype.dlShiftTo=function(e,t){var r;for(r=this.t-1;r>=0;--r)t[r+e]=this[r];for(r=e-1;r>=0;--r)t[r]=0;t.t=this.t+e,t.s=this.s},r.prototype.drShiftTo=function(e,t){for(var r=e;r=0;--r)t[r+s+1]=this[r]>>i|a,a=(this[r]&o)<=0;--r)t[r]=0;t[s]=a,t.t=this.t+s+1,t.s=this.s,t.clamp()},r.prototype.rShiftTo=function(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t)t.t=0;else{var n=e%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(t[this.t-r-1]|=(this.s&o)<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:n>0&&(t[r++]=n),t.t=r,t.clamp()},r.prototype.multiplyTo=function(e,t){var n=this.abs(),i=e.abs(),o=n.t;for(t.t=o+i.t;--o>=0;)t[o]=0;for(o=0;o=0;)e[r]=0;for(r=0;r=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}e.t>0&&(e[e.t-1]+=t.am(r,t[r],e,2*r,0,1)),e.s=0,e.clamp()},r.prototype.divRemTo=function(e,t,i){var o=e.abs();if(!(o.t<=0)){var s=this.abs();if(s.t0?(o.lShiftTo(f,a),s.lShiftTo(f,i)):(o.copyTo(a),s.copyTo(i));var h=a.t,d=a[h-1];if(0!=d){var p=d*(1<1?a[h-2]>>this.F2:0),y=this.FV/p,g=(1<=0&&(i[i.t++]=1,i.subTo(w,i)),r.ONE.dlShiftTo(h,w),w.subTo(a,a);a.t=0;){var E=i[--m]==d?this.DM:Math.floor(i[m]*y+(i[m-1]+b)*g);if((i[m]+=a.am(0,E,i,v,0,h))0&&i.rShiftTo(f,i),c<0&&r.ZERO.subTo(i,i)}}},r.prototype.invDigit=function(){if(this.t<1)return 0;var e=this[0];if(0==(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},r.prototype.isEven=function(){return 0==(this.t>0?1&this[0]:this.s)},r.prototype.exp=function(e,t){if(e>4294967295||e<1)return r.ONE;var i=n(),o=n(),s=t.convert(this),a=l(e)-1;for(s.copyTo(i);--a>=0;)if(t.sqrTo(i,o),(e&1<0)t.mulTo(o,s,i);else{var c=i;i=o,o=c}return t.revert(i)},r.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var r,n=(1<0)for(a>a)>0&&(i=!0,o=c(r));s>=0;)a>(a+=this.DB-t)):(r=this[s]>>(a-=t)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=c(r));return i?o:"0"},r.prototype.negate=function(){var e=n();return r.ZERO.subTo(this,e),e},r.prototype.abs=function(){return this.s<0?this.negate():this},r.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var r=this.t;if(0!=(t=r-e.t))return this.s<0?-t:t;for(;--r>=0;)if(0!=(t=this[r]-e[r]))return t;return 0},r.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+l(this[this.t-1]^this.s&this.DM)},r.prototype.mod=function(e){var t=n();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(r.ZERO)>0&&e.subTo(t,t),t},r.prototype.modPowInt=function(e,t){var r;return r=e<256||t.isEven()?new h(t):new d(t),this.exp(e,r)},r.ZERO=f(0),r.ONE=f(1),w.prototype.convert=E,w.prototype.revert=E,w.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r)},w.prototype.sqrTo=function(e,t){e.squareTo(t)},_.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=n();return e.copyTo(t),this.reduce(t),t},_.prototype.revert=function(e){return e},_.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},_.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},_.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var S,A,T,I=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],C=(1<<26)/I[I.length-1];function P(){var e;e=(new Date).getTime(),A[T++]^=255&e,A[T++]^=e>>8&255,A[T++]^=e>>16&255,A[T++]^=e>>24&255,T>=N&&(T-=N)}if(r.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},r.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),i=f(r),o=n(),s=n(),a="";for(this.divRemTo(i,o,s);o.signum()>0;)a=(r+s.intValue()).toString(e).substr(1)+a,o.divRemTo(i,o,s);return s.intValue().toString(e)+a},r.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var n=this.chunkSize(t),i=Math.pow(t,n),o=!1,s=0,a=0,c=0;c=n&&(this.dMultiply(i),this.dAddOffset(a,0),s=0,a=0))}s>0&&(this.dMultiply(Math.pow(t,s)),this.dAddOffset(a,0)),o&&r.ZERO.subTo(this,this)},r.prototype.fromNumber=function(e,t,n){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,n),this.testBit(e-1)||this.bitwiseTo(r.ONE.shiftLeft(e-1),y,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(r.ONE.shiftLeft(e-1),this);else{var i=new Array,o=7&e;i.length=1+(e>>3),t.nextBytes(i),o>0?i[0]&=(1<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t[r++]=n:n<-1&&(t[r++]=this.DV+n),t.t=r,t.clamp()},r.prototype.dMultiply=function(e){this[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},r.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this[this.t++]=0;for(this[t]+=e;this[t]>=this.DV;)this[t]-=this.DV,++t>=this.t&&(this[this.t++]=0),++this[t]}},r.prototype.multiplyLowerTo=function(e,t,r){var n,i=Math.min(this.t+e.t,t);for(r.s=0,r.t=i;i>0;)r[--i]=0;for(n=r.t-this.t;i=0;)r[n]=0;for(n=Math.max(t-this.t,0);n0)if(0==t)r=this[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this[n])%e;return r},r.prototype.millerRabin=function(e){var t=this.subtract(r.ONE),i=t.getLowestSetBit();if(i<=0)return!1;var o=t.shiftRight(i);(e=e+1>>1)>I.length&&(e=I.length);for(var s=n(),a=0;a>24},r.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},r.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},r.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var r,n=this.DB-e*this.DB%8,i=0;if(e-- >0)for(n>n)!=(this.s&this.DM)>>n&&(t[i++]=r|this.s<=0;)n<8?(r=(this[e]&(1<>(n+=this.DB-8)):(r=this[e]>>(n-=8)&255,n<=0&&(n+=this.DB,--e)),0!=(128&r)&&(r|=-256),0==i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(t[i++]=r);return t},r.prototype.equals=function(e){return 0==this.compareTo(e)},r.prototype.min=function(e){return this.compareTo(e)<0?this:e},r.prototype.max=function(e){return this.compareTo(e)>0?this:e},r.prototype.and=function(e){var t=n();return this.bitwiseTo(e,p,t),t},r.prototype.or=function(e){var t=n();return this.bitwiseTo(e,y,t),t},r.prototype.xor=function(e){var t=n();return this.bitwiseTo(e,g,t),t},r.prototype.andNot=function(e){var t=n();return this.bitwiseTo(e,b,t),t},r.prototype.not=function(){for(var e=n(),t=0;t=this.t?0!=this.s:0!=(this[t]&1<1){var y=n();for(i.sqrTo(a[1],y);c<=p;)a[c]=n(),i.mulTo(y,a[c-2],a[c]),c+=2}var g,b,m=e.t-1,v=!0,w=n();for(o=l(e[m])-1;m>=0;){for(o>=u?g=e[m]>>o-u&p:(g=(e[m]&(1<0&&(g|=e[m-1]>>this.DB+o-u)),c=r;0==(1&g);)g>>=1,--c;if((o-=c)<0&&(o+=this.DB,--m),v)a[g].copyTo(s),v=!1;else{for(;c>1;)i.sqrTo(s,w),i.sqrTo(w,s),c-=2;c>0?i.sqrTo(s,w):(b=s,s=w,w=b),i.mulTo(w,a[g],s)}for(;m>=0&&0==(e[m]&1<=0?(n.subTo(i,n),t&&o.subTo(a,o),s.subTo(c,s)):(i.subTo(n,i),t&&a.subTo(o,a),c.subTo(s,c))}return 0!=i.compareTo(r.ONE)?r.ZERO:c.compareTo(e)>=0?c.subtract(e):c.signum()<0?(c.addTo(e,c),c.signum()<0?c.add(e):c):c},r.prototype.pow=function(e){return this.exp(e,new w)},r.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},r.prototype.isProbablePrime=function(e){var t,r=this.abs();if(1==r.t&&r[0]<=I[I.length-1]){for(t=0;t>>8,A[T++]=255&R;T=0,P()}function x(){if(null==S){for(P(),(S=new O).init(A),T=0;T{"use strict";const n=r(32114),i={16:"aes-128-ctr",32:"aes-256-ctr"};e.exports=function(e){const t=i[e.length];if(!t){const t=Object.entries(i).map((([e,t])=>`${e} (${t})`)).join(" / ");throw n(new Error(`Invalid key length ${e.length} bytes. Must be ${t}`),"ERR_INVALID_KEY_LENGTH")}return t}},98380:(e,t,r)=>{"use strict";r(8925);const n=r(3832),{toString:i}=r(92263),{fromString:o}=r(52217);e.exports={createCipheriv:(e,t,r)=>{const s=n.cipher.createCipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}},createDecipheriv:(e,t,r)=>{const s=n.cipher.createDecipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}}}},88411:(e,t,r)=>{"use strict";const n=r(98380),i=r(73226);t.create=async function(e,t){const r=i(e),o=n.createCipheriv(r,e,t),s=n.createDecipheriv(r,e,t);return{encrypt:async e=>o.update(e),decrypt:async e=>s.update(e)}}},27552:(e,t,r)=>{"use strict";const{concat:n}=r(20605),{fromString:i}=r(52217),o=r(63649);e.exports={create:function({algorithm:e="AES-GCM",nonceLength:t=12,keyLength:r=16,digest:s="SHA-256",saltLength:a=16,iterations:c=32767}={}){const u=o.get();return r*=8,{encrypt:async function(o,f){const l=u.getRandomValues(new Uint8Array(a)),h=u.getRandomValues(new Uint8Array(t)),d={name:e,iv:h},p={name:"PBKDF2",salt:l,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(f),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["encrypt"]),b=await u.subtle.encrypt(d,g,o);return n([l,d.iv,new Uint8Array(b)])},decrypt:async function(n,o){const f=n.slice(0,a),l=n.slice(a,a+t),h=n.slice(a+t),d={name:e,iv:l},p={name:"PBKDF2",salt:f,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(o),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["decrypt"]),b=await u.subtle.decrypt(d,g,h);return new Uint8Array(b)}}}}},31088:(e,t,r)=>{"use strict";const n=r(63649),i=r(38872),o={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"};t.create=async function(e,t){const r=o[e],s=await n.get().subtle.importKey("raw",t,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{digest:async e=>(async(e,t)=>{const r=await n.get().subtle.sign({name:"HMAC"},e,t);return new Uint8Array(r,r.byteOffset,r.byteLength)})(s,e),length:i[e]}}},38872:e=>{"use strict";e.exports={SHA1:20,SHA256:32,SHA512:64}},82204:(e,t,r)=>{"use strict";const n=r(31088),i=r(88411),o=r(14437);t.aes=i,t.hmac=n,t.keys=o,t.randomBytes=r(87503),t.pbkdf2=r(93221)},78590:(e,t,r)=>{"use strict";const n=r(32114),i=r(63649),{base64urlToBuffer:o}=r(56441),s=r(45753),{toString:a}=r(92263),{concat:c}=r(20605),{equals:u}=r(19588),f={"P-256":256,"P-384":384,"P-521":521};t.generateEphmeralKeyPair=async function(e){s(Object.keys(f),e);const t=await i.get().subtle.generateKey({name:"ECDH",namedCurve:e},!0,["deriveBits"]);return{key:h(await i.get().subtle.exportKey("jwk",t.publicKey)),genSharedKey:async(r,n)=>{let o;o=n?await i.get().subtle.importKey("jwk",p(e,n),{name:"ECDH",namedCurve:e},!1,["deriveBits"]):t.privateKey;const s=[await i.get().subtle.importKey("jwk",d(e,r),{name:"ECDH",namedCurve:e},!1,[]),o],a=await i.get().subtle.deriveBits({name:"ECDH",namedCurve:e,public:s[0]},s[1],f[e]);return new Uint8Array(a,a.byteOffset,a.byteLength)}}};const l={"P-256":32,"P-384":48,"P-521":66};function h(e){const t=l[e.crv];return c([Uint8Array.from([4]),o(e.x,t),o(e.y,t)],1+2*t)}function d(e,t){const r=l[e];if(u(!t.slice(0,1),Uint8Array.from([4])))throw n(new Error("Cannot unmarshal public key - invalid key format"),"ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:e,x:a(t.slice(1,r+1),"base64url"),y:a(t.slice(1+r),"base64url"),ext:!0}}const p=(e,t)=>({...d(e,t.public),d:a(t.private,"base64url")})},96535:(e,t,r)=>{"use strict";const n=r(32114),{equals:i}=r(19588),{sha256:o}=r(56155),{base58btc:s}=r(99086),{identity:a}=r(78103),c=r(71127),u=r(17241),f=r(69716);class l{constructor(e){this._key=d(e,c.publicKeyLength)}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return this._key}get bytes(){return u.PublicKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}}class h{constructor(e,t){this._key=d(e,c.privateKeyLength),this._publicKey=d(t,c.publicKeyLength)}async sign(e){return c.hashAndSign(this._key,e)}get public(){return new l(this._publicKey)}marshal(){return this._key}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}async id(){const e=await a.digest(this.public.bytes);return s.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if("libp2p-key"===t)return f.export(this.bytes,e);throw n(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}function d(e,t){if((e=Uint8Array.from(e||[])).length!==t)throw n(new Error(`Key must be a Uint8Array of length ${t}, got ${e.length}`),"ERR_INVALID_KEY_TYPE");return e}e.exports={Ed25519PublicKey:l,Ed25519PrivateKey:h,unmarshalEd25519PrivateKey:function(e){if(e.length>c.privateKeyLength){const t=(e=d(e,c.privateKeyLength+c.publicKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.privateKeyLength,e.length);return new h(t,r)}const t=(e=d(e,c.privateKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.publicKeyLength);return new h(t,r)},unmarshalEd25519PublicKey:function(e){return e=d(e,c.publicKeyLength),new l(e)},generateKeyPair:async function(){const{privateKey:e,publicKey:t}=await c.generateKey();return new h(e,t)},generateKeyPairFromSeed:async function(e){const{privateKey:t,publicKey:r}=await c.generateKeyFromSeed(e);return new h(t,r)}}},71127:(e,t,r)=>{"use strict";const n=r(53710);function i(e,r){const n=new Uint8Array(t.privateKeyLength);for(let t=0;t<32;t++)n[t]=e[t],n[32+t]=r[t];return n}t.publicKeyLength=32,t.privateKeyLength=64,t.generateKey=async function(){const e=n.utils.randomPrivateKey(),t=await n.getPublicKey(e);return{privateKey:i(e,t),publicKey:t}},t.generateKeyFromSeed=async function(e){if(32!==e.length)throw new TypeError('"seed" must be 32 bytes in length.');if(!(e instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, or Uint8Array.');const t=e,r=await n.getPublicKey(t);return{privateKey:i(t,r),publicKey:r}},t.hashAndSign=function(e,t){const r=e.slice(0,32);return n.sign(t,r)},t.hashAndVerify=function(e,t,r){return n.verify(t,r,e)}},55563:(e,t,r)=>{"use strict";const n=r(78590);e.exports=async e=>n.generateEphmeralKeyPair(e)},69716:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(27552);e.exports={export:async function(e,t){const r=i.create(),o=await r.encrypt(e,t);return n.encode(o)}}},24709:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(27552);e.exports={import:async function(e,t){const r=n.decode(e),o=i.create();return await o.decrypt(r,t)}}},14437:(e,t,r)=>{"use strict";const n=r(17241);r(3068),r(97450);const i=r(3832),o=r(32114),{fromString:s}=r(52217),a=r(24709),c={rsa:r(19950),ed25519:r(96535),secp256k1:r(49434)(n,r(87503))},u="secp256k1 support requires libp2p-crypto-secp256k1 package",f="ERR_MISSING_PACKAGE";function l(e){const t=c[e.toLowerCase()];if(!t){const t=Object.keys(c).join(" / ");throw o(new Error(`invalid or unsupported key type ${e}. Must be ${t}`),"ERR_UNSUPPORTED_KEY_TYPE")}return t}const h=async e=>{const t=n.PrivateKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPrivateKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PrivateKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PrivateKey(r);throw o(new Error(u),f);default:l(t.Type)}};e.exports={supportedKeys:c,keysPBM:n,keyStretcher:r(73494),generateEphemeralKeyPair:r(55563),generateKeyPair:async(e,t)=>l(e).generateKeyPair(t),generateKeyPairFromSeed:async(e,t,r)=>{const n=l(e);if("ed25519"!==e.toLowerCase())throw o(new Error("Seed key derivation is unimplemented for RSA or secp256k1"),"ERR_UNSUPPORTED_KEY_DERIVATION_TYPE");return n.generateKeyPairFromSeed(t,r)},unmarshalPublicKey:e=>{const t=n.PublicKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPublicKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PublicKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PublicKey(r);throw o(new Error(u),f);default:l(t.Type)}},marshalPublicKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),unmarshalPrivateKey:h,marshalPrivateKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),import:async(e,t)=>{try{const r=await a.import(e,t);return h(r)}catch(e){}const r=i.pki.decryptRsaPrivateKey(e,t);if(null===r)throw o(new Error("Cannot read the key, most likely the password is wrong or not a RSA key"),"ERR_CANNOT_DECRYPT_PEM");let n=i.asn1.toDer(i.pki.privateKeyToAsn1(r));return n=s(n.getBytes(),"ascii"),c.rsa.unmarshalRsaPrivateKey(n)}}},925:(e,t,r)=>{"use strict";r(28095);const n=r(3832),{base64urlToBigInteger:i}=r(56441);function o(e,t){return t.map((t=>i(e[t])))}e.exports={jwk2pub:function(e){return n.pki.setRsaPublicKey(...o(e,["n","e"]))},jwk2priv:function(e){return n.pki.setRsaPrivateKey(...o(e,["n","e","d","p","q","dp","dq","qi"]))}}},73494:(e,t,r)=>{"use strict";const n=r(32114),{concat:i}=r(20605),{fromString:o}=r(52217),s=r(31088),a={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,cipherKeySize:32}};e.exports=async(e,t,r)=>{const c=a[e];if(!c){const t=Object.keys(a).join(" / ");throw n(new Error(`unknown cipher type '${e}'. Must be ${t}`),"ERR_INVALID_CIPHER_TYPE")}if(!t)throw n(new Error("missing hash type"),"ERR_MISSING_HASH_TYPE");const u=c.keySize,f=c.ivSize,l=o("key expansion"),h=2*(f+u+20),d=await s.create(t,r);let p=await d.digest(l);const y=[];let g=0;for(;gh&&(t=h-g),y.push(e),g+=t,p=await d.digest(p)}const b=h/2,m=i(y),v=m.slice(0,b),w=m.slice(b,h),E=e=>({iv:e.slice(0,f),cipherKey:e.slice(f,f+u),macKey:e.slice(f+u)});return{k1:E(v),k2:E(w)}}},17241:(e,t,r)=>{"use strict";var n,i,o=r(62100),s=o.Reader,a=o.Writer,c=o.util,u=o.roots["libp2p-crypto-keys"]||(o.roots["libp2p-crypto-keys"]={});u.KeyType=(n={},(i=Object.create(n))[n[0]="RSA"]=0,i[n[1]="Ed25519"]=1,i[n[2]="Secp256k1"]=2,i),u.PublicKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PublicKey)return e;var t=new u.PublicKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),u.PrivateKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PrivateKey)return e;var t=new u.PrivateKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),e.exports=u},96741:(e,t,r)=>{"use strict";const n=r(63649),i=r(87503),{toString:o}=r(92263),{fromString:s}=r(52217);function a(e){return Promise.all([n.get().subtle.exportKey("jwk",e.privateKey),n.get().subtle.exportKey("jwk",e.publicKey)])}t.utils=r(94604),t.generateKey=async function(e){const t=await n.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await a(t);return{privateKey:r[0],publicKey:r[1]}},t.unmarshalPrivateKey=async function(e){const t=[await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await(r=e,n.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"]))];var r;const i=await a({privateKey:t[0],publicKey:t[1]});return{privateKey:i[0],publicKey:i[1]}},t.getRandomValues=i,t.hashAndSign=async function(e,t){const r=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),i=await n.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(i,i.byteOffset,i.byteLength)},t.hashAndVerify=async function(e,t,r){const i=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return n.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},i,t,r)};const{jwk2pub:c,jwk2priv:u}=r(925);function f(e,t,r,n){const i=t?c(e):u(e),a=n(o(Uint8Array.from(r),"ascii"),i);return s(a,"ascii")}t.encrypt=function(e,t){return f(e,!0,t,((e,t)=>t.encrypt(e)))},t.decrypt=function(e,t){return f(e,!1,t,((e,t)=>t.decrypt(e)))}},19950:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263);r(63219);const a=r(3832),c=r(96741),u=r(17241),f=r(69716);class l{constructor(e){this._key=e}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.utils.jwkToPkix(this._key)}get bytes(){return u.PublicKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}encrypt(e){return c.encrypt(this._key,e)}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class h{constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return c.getRandomValues(16)}async sign(e){return c.hashAndSign(this._key,e)}get public(){if(!this._publicKey)throw i(new Error("public key not provided"),"ERR_PUBKEY_NOT_PROVIDED");return new l(this._publicKey)}decrypt(e){return c.decrypt(this._key,e)}marshal(){return c.utils.jwkToPkcs1(this._key)}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="pkcs-8"){if("pkcs-8"===t){const t=new a.util.ByteBuffer(this.marshal()),r=a.asn1.fromDer(t),n=a.pki.privateKeyFromAsn1(r),i={algorithm:"aes256",count:1e4,saltSize:16,prfAlgorithm:"sha512"};return a.pki.encryptRsaPrivateKey(n,e,i)}if("libp2p-key"===t)return f.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}e.exports={RsaPublicKey:l,RsaPrivateKey:h,unmarshalRsaPublicKey:function(e){const t=c.utils.pkixToJwk(e);return new l(t)},unmarshalRsaPrivateKey:async function(e){const t=c.utils.pkcs1ToJwk(e),r=await c.unmarshalPrivateKey(t);return new h(r.privateKey,r.publicKey)},generateKeyPair:async function(e){const t=await c.generateKey(e);return new h(t.privateKey,t.publicKey)},fromJwk:async function(e){const t=await c.unmarshalPrivateKey(e);return new h(t.privateKey,t.publicKey)}}},94604:(e,t,r)=>{"use strict";r(3068),r(28095);const n=r(3832),{bigIntegerToUintBase64url:i,base64urlToBigInteger:o}=r(56441),{fromString:s}=r(52217),{toString:a}=r(92263);t.pkcs1ToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),d:i(r.d),p:i(r.p),q:i(r.q),dp:i(r.dP),dq:i(r.dQ),qi:i(r.qInv),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkcs1=function(e){const t=n.pki.privateKeyToAsn1({n:o(e.n),e:o(e.e),d:o(e.d),p:o(e.p),q:o(e.q),dP:o(e.dp),dQ:o(e.dq),qInv:o(e.qi)});return s(n.asn1.toDer(t).getBytes(),"ascii")},t.pkixToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkix=function(e){const t=n.pki.publicKeyToAsn1({n:o(e.n),e:o(e.e)});return s(n.asn1.toDer(t).getBytes(),"ascii")}},49434:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263),a=r(69716);e.exports=(e,t,c)=>{c=c||r(54056)();class u{constructor(e){c.validatePublicKey(e),this._key=e}verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.compressPublicKey(this._key)}get bytes(){return e.PublicKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class f{constructor(e,t){this._key=e,this._publicKey=t||c.computePublicKey(e),c.validatePrivateKey(this._key),c.validatePublicKey(this._publicKey)}sign(e){return c.hashAndSign(this._key,e)}get public(){return new u(this._publicKey)}marshal(){return this._key}get bytes(){return e.PrivateKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="libp2p-key"){if("libp2p-key"===t)return a.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}return{Secp256k1PublicKey:u,Secp256k1PrivateKey:f,unmarshalSecp256k1PrivateKey:function(e){return new f(e)},unmarshalSecp256k1PublicKey:function(e){return new u(e)},generateKeyPair:async function(){const e=await c.generateKey();return new f(e)}}}},54056:(e,t,r)=>{"use strict";const n=r(32114),i=r(1795),{sha256:o}=r(56155);e.exports=()=>({generateKey:function(){return i.utils.randomPrivateKey()},privateKeyLength:32,hashAndSign:async function(e,t){const{digest:r}=await o.digest(t);try{return await i.sign(r,e)}catch(e){throw n(e,"ERR_INVALID_INPUT")}},hashAndVerify:async function(e,t,r){try{const{digest:n}=await o.digest(r);return i.verify(t,n,e)}catch(e){throw n(e,"ERR_INVALID_INPUT")}},compressPublicKey:function(e){return i.Point.fromHex(e).toRawBytes(!0)},decompressPublicKey:function(e){return i.Point.fromHex(e).toRawBytes(!1)},validatePrivateKey:function(e){try{i.getPublicKey(e,!0)}catch(e){throw n(e,"ERR_INVALID_PRIVATE_KEY")}},validatePublicKey:function(e){try{i.Point.fromHex(e)}catch(e){throw n(e,"ERR_INVALID_PUBLIC_KEY")}},computePublicKey:function(e){try{return i.getPublicKey(e,!0)}catch(e){throw n(e,"ERR_INVALID_PRIVATE_KEY")}}})},45753:(e,t,r)=>{"use strict";const n=r(32114);e.exports=function(e,t){if(!e.includes(t)){const r=e.join(" / ");throw n(new Error(`Unknown curve: ${t}. Must be ${r}`),"ERR_INVALID_CURVE")}}},93221:(e,t,r)=>{"use strict";const n=r(98960),i=r(97116),o=r(32114),s={sha1:"sha1","sha2-256":"sha256","sha2-512":"sha512"};e.exports=function(e,t,r,a,c){const u=s[c];if(!u){const e=Object.keys(s).join(" / ");throw o(new Error(`Hash '${c}' is unknown or not supported. Must be ${e}`),"ERR_UNSUPPORTED_HASH_TYPE")}const f=n(e,t,r,a,u);return i.encode64(f)}},87503:(e,t,r)=>{"use strict";const n=r(1914),i=r(32114);e.exports=function(e){if(isNaN(e)||e<=0)throw i(new Error("random bytes length must be a Number bigger than 0"),"ERR_INVALID_LENGTH");return n(e)}},56441:(e,t,r)=>{"use strict";r(97116),r(15764);const n=r(3832),{fromString:i}=r(52217),{toString:o}=r(92263),{concat:s}=r(20605);t.bigIntegerToUintBase64url=(e,t)=>{let r=Uint8Array.from(e.abs().toByteArray());if(r=0===r[0]?r.slice(1):r,null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return o(r,"base64url")},t.base64urlToBigInteger=e=>{const r=t.base64urlToBuffer(e);return new n.jsbn.BigInteger(o(r,"base16"),16)},t.base64urlToBuffer=(e,t)=>{let r=i(e,"base64urlpad");if(null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return r}},63649:(e,t)=>{"use strict";t.get=(e=globalThis)=>{const t=e.crypto;if(!t||!t.subtle)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}},79414:(e,t,r)=>{"use strict";const n=r(88785),{Multiaddr:i}=r(46584),o=r(32114),{OPEN:s,CLOSING:a,CLOSED:c}=r(26067),u=Symbol.for("@libp2p/interface-connection/connection");class f{constructor({localAddr:e,remoteAddr:t,localPeer:r,remotePeer:a,newStream:c,close:u,getStreams:f,stat:l}){!function(e,t,r,s,a,c,u){if(e&&!i.isMultiaddr(e))throw o(new Error("localAddr must be an instance of multiaddr"),"ERR_INVALID_PARAMETERS");if(!n.isPeerId(t))throw o(new Error("localPeer must be an instance of peer-id"),"ERR_INVALID_PARAMETERS");if(!n.isPeerId(r))throw o(new Error("remotePeer must be an instance of peer-id"),"ERR_INVALID_PARAMETERS");if("function"!=typeof s)throw o(new Error("new stream must be a function"),"ERR_INVALID_PARAMETERS");if("function"!=typeof a)throw o(new Error("close must be a function"),"ERR_INVALID_PARAMETERS");if("function"!=typeof c)throw o(new Error("getStreams must be a function"),"ERR_INVALID_PARAMETERS");if(!u)throw o(new Error("connection metadata object must be provided"),"ERR_INVALID_PARAMETERS");if("inbound"!==u.direction&&"outbound"!==u.direction)throw o(new Error('direction must be "inbound" or "outbound"'),"ERR_INVALID_PARAMETERS");if(!u.timeline)throw o(new Error("connection timeline object must be provided in the stat object"),"ERR_INVALID_PARAMETERS");if(!u.timeline.open)throw o(new Error("connection open timestamp must be provided"),"ERR_INVALID_PARAMETERS");if(!u.timeline.upgraded)throw o(new Error("connection upgraded timestamp must be provided"),"ERR_INVALID_PARAMETERS")}(e,r,a,c,u,f,l),this.id=parseInt(String(1e9*Math.random())).toString(36)+Date.now(),this.localAddr=e,this.remoteAddr=t,this.localPeer=r,this.remotePeer=a,this._stat={...l,status:s},this._newStream=c,this._close=u,this._getStreams=f,this.registry=new Map,this.tags=[]}get[Symbol.toStringTag](){return"Connection"}get[u](){return!0}static isConnection(e){return Boolean(e&&e[u])}get stat(){return this._stat}get streams(){return this._getStreams()}async newStream(e){if(this.stat.status===a)throw o(new Error("the connection is being closed"),"ERR_CONNECTION_BEING_CLOSED");if(this.stat.status===c)throw o(new Error("the connection is closed"),"ERR_CONNECTION_CLOSED");Array.isArray(e)||(e=[e]);const{stream:t,protocol:r}=await this._newStream(e);return this.addStream(t,{protocol:r}),{stream:t,protocol:r}}addStream(e,{protocol:t,metadata:r={}}){this.registry.set(e.id,{protocol:t,...r})}removeStream(e){this.registry.delete(e)}async close(){if(this.stat.status!==c){if(this._closing)return this._closing;this.stat.status=a,this._closing=await this._close(),this._stat.timeline.close=Date.now(),this.stat.status=c}}}e.exports=f},15458:(e,t,r)=>{"use strict";t.Connection=r(79414)},26067:e=>{"use strict";e.exports={OPEN:"open",CLOSING:"closing",CLOSED:"closed"}},7609:e=>{"use strict";const t=()=>{},r=Symbol.for("@libp2p/js-interfaces/topology");class n{constructor({min:e=0,max:r=1/0,handlers:n={}}){this.min=e,this.max=r,this._onConnect=n.onConnect||t,this._onDisconnect=n.onDisconnect||t,this.peers=new Set}get[Symbol.toStringTag](){return"Topology"}get[r](){return!0}static isTopology(e){return Boolean(e&&e[r])}set registrar(e){this._registrar=e}disconnect(e){this._onDisconnect(e)}}e.exports=n},13939:(e,t,r)=>{"use strict";const{Buffer:n}=r(24921),i=Symbol.for("BufferList");function o(e){if(!(this instanceof o))return new o(e);o._init.call(this,e)}o._init=function(e){Object.defineProperty(this,i,{value:!0}),this._bufs=[],this.length=0,e&&this.append(e)},o.prototype._new=function(e){return new o(e)},o.prototype._offset=function(e){if(0===e)return[0,0];let t=0;for(let r=0;rthis.length||e<0)return;const t=this._offset(e);return this._bufs[t[0]][t[1]]},o.prototype.slice=function(e,t){return"number"==typeof e&&e<0&&(e+=this.length),"number"==typeof t&&t<0&&(t+=this.length),this.copy(null,0,e,t)},o.prototype.copy=function(e,t,r,i){if(("number"!=typeof r||r<0)&&(r=0),("number"!=typeof i||i>this.length)&&(i=this.length),r>=this.length)return e||n.alloc(0);if(i<=0)return e||n.alloc(0);const o=!!e,s=this._offset(r),a=i-r;let c=a,u=o&&t||0,f=s[1];if(0===r&&i===this.length){if(!o)return 1===this._bufs.length?this._bufs[0]:n.concat(this._bufs,this.length);for(let t=0;tr)){this._bufs[t].copy(e,u,f,f+c),u+=r;break}this._bufs[t].copy(e,u,f),u+=r,c-=r,f&&(f=0)}return e.length>u?e.slice(0,u):e},o.prototype.shallowSlice=function(e,t){if(e=e||0,t="number"!=typeof t?this.length:t,e<0&&(e+=this.length),t<0&&(t+=this.length),e===t)return this._new();const r=this._offset(e),n=this._offset(t),i=this._bufs.slice(r[0],n[0]+1);return 0===n[1]?i.pop():i[i.length-1]=i[i.length-1].slice(0,n[1]),0!==r[1]&&(i[0]=i[0].slice(r[1])),this._new(i)},o.prototype.toString=function(e,t,r){return this.slice(t,r).toString(e)},o.prototype.consume=function(e){if(e=Math.trunc(e),Number.isNaN(e)||e<=0)return this;for(;this._bufs.length;){if(!(e>=this._bufs[0].length)){this._bufs[0]=this._bufs[0].slice(e),this.length-=e;break}e-=this._bufs[0].length,this.length-=this._bufs[0].length,this._bufs.shift()}return this},o.prototype.duplicate=function(){const e=this._new();for(let t=0;tthis.length?this.length:t;const i=this._offset(t);let o=i[0],s=i[1];for(;o=e.length){const r=t.indexOf(e,s);if(-1!==r)return this._reverseOffset([o,r]);s=t.length-e.length+1}else{const t=this._reverseOffset([o,s]);if(this._match(t,e))return t;s++}s=0}return-1},o.prototype._match=function(e,t){if(this.length-e{"use strict";var n=r(79742),i=r(80645),o="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;var s=2147483647;function a(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return l(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var r=0|y(e,t),n=a(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(V(e,Uint8Array)){var t=new Uint8Array(e);return d(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(V(e,ArrayBuffer)||e&&V(e.buffer,ArrayBuffer))return d(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(V(e,SharedArrayBuffer)||e&&V(e.buffer,SharedArrayBuffer)))return d(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);var i=function(e){if(c.isBuffer(e)){var t=0|p(e.length),r=a(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||F(e.length)?a(0):h(e):"Buffer"===e.type&&Array.isArray(e.data)?h(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function f(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function l(e){return f(e),a(e<0?0:0|p(e))}function h(e){for(var t=e.length<0?0:0|p(e.length),r=a(t),n=0;n=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||V(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return U(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){var n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return k(this,t,r);case"utf8":case"utf-8":return I(this,t,r);case"ascii":return P(this,t,r);case"latin1":case"binary":return R(this,t,r);case"base64":return T(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function b(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}function m(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),F(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:v(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):v(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,r,n,i){var o,s=1,a=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,r/=2}function u(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var f=-1;for(o=r;oa&&(r=a-c),o=r;o>=0;o--){for(var l=!0,h=0;hi&&(n=i):n=i;var o=t.length;n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function T(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function I(e,t,r){r=Math.min(e.length,r);for(var n=[],i=t;i239?4:u>223?3:u>191?2:1;if(i+l<=r)switch(l){case 1:u<128&&(f=u);break;case 2:128==(192&(o=e[i+1]))&&(c=(31&u)<<6|63&o)>127&&(f=c);break;case 3:o=e[i+1],s=e[i+2],128==(192&o)&&128==(192&s)&&(c=(15&u)<<12|(63&o)<<6|63&s)>2047&&(c<55296||c>57343)&&(f=c);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(c=(15&u)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&c<1114112&&(f=c)}null===f?(f=65533,l=1):f>65535&&(f-=65536,n.push(f>>>10&1023|55296),f=56320|1023&f),n.push(f),i+=l}return function(e){var t=e.length;if(t<=C)return String.fromCharCode.apply(String,e);for(var r="",n=0;nn.length?c.from(o).copy(n,i):Uint8Array.prototype.set.call(n,o,i);else{if(!c.isBuffer(o))throw new TypeError('"list" argument must be an Array of Buffers');o.copy(n,i)}i+=o.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(V(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(t>>>=0),a=Math.min(o,s),u=this.slice(n,i),f=e.slice(t,r),l=0;l>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return E(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return A(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var C=4096;function P(e,t,r){var n="";r=Math.min(e.length,r);for(var i=t;in)&&(r=n);for(var i="",o=t;or)throw new RangeError("Trying to access beyond buffer length")}function M(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function O(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function N(e,t,r,n,o){return t=+t,r>>>=0,o||O(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function L(e,t,r,n,o){return t=+t,r>>>=0,o||O(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){var r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e],i=1,o=0;++o>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e+--t],i=1;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||x(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,r){e>>>=0,t>>>=0,r||x(e,t,this.length);for(var n=this[e],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||x(e,t,this.length);for(var n=t,i=1,o=this[e+--n];n>0&&(i*=256);)o+=this[e+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||x(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||x(e,2,this.length);var r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||x(e,2,this.length);var r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||x(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return e>>>=0,t||x(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||x(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||x(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,n||M(this,e,t,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,e,t,r,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){var i=Math.pow(2,8*r-1);M(this,e,t,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&0===a&&0!==this[t+o+1]&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||M(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeFloatLE=function(e,t,r){return N(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return N(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return L(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return L(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function U(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function j(e,t,r,n){for(var i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function V(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function F(e){return e!=e}var q=function(){for(var e="0123456789abcdef",t=new Array(256),r=0;r<16;++r)for(var n=16*r,i=0;i<16;++i)t[n+i]=e[r]+e[i];return t}()},72842:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"==typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"==typeof r&&(n=r,r=void 0),null!=r&&(n.code=r);try{return t(e,n)}catch(r){n.message=e.message,n.stack=e.stack;const i=function(){};return i.prototype=Object.create(Object.getPrototypeOf(e)),t(new i,n)}}},3477:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},38575:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},4941:(e,t,r)=>{e.exports={encode:r(38575),decode:r(3477),encodingLength:r(23963)}},23963:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";const n=r(4941),i=r(13939);e.exports=e=>async function*(){const t=new o;for await(const r of e){const e=t.write(r);e.length&&(yield e)}}();class o{constructor(){this._buffer=new i,this._bufferProxy=new Proxy({},{get:(e,t)=>"l"===t[0]?this._buffer[t]:this._buffer.get(parseInt(t))}),this._headerInfo=null}write(e){if(!e||!e.length)return[];this._buffer.append(e);const t=[];for(;;){if(!this._headerInfo)try{this._headerInfo=this._decodeHeader(this._bufferProxy)}catch(e){break}const{id:e,type:r,length:n,offset:i}=this._headerInfo;if(this._buffer.length-i>3,type:7&t,offset:r,length:i}}}},45164:(e,t,r)=>{"use strict";const n=r(4941),i=r(13939),o=10240,s=new class{constructor(){this._pool=new Uint8Array(o),this._poolOffset=0}write(e){const t=this._pool;let r=this._poolOffset;n.encode(e.id<<3|e.type,t,r),r+=n.encode.bytes,n.encode(e.data?e.data.length:0,t,r),r+=n.encode.bytes;const i=t.subarray(this._poolOffset,r);return o-r<100?(this._pool=new Uint8Array(o),this._poolOffset=0):this._poolOffset=r,e.data?[i,e.data]:i}};e.exports=e=>async function*(){for await(const t of e)Array.isArray(t)?yield new i(t.map((e=>s.write(e)))):yield new i(s.write(t))}()},73209:(e,t,r)=>{"use strict";t.encode=r(45164),t.decode=r(75516)},1267:(e,t,r)=>{"use strict";e.exports=r(47932)},82492:(e,t)=>{"use strict";const r=Object.freeze({NEW_STREAM:0,MESSAGE_RECEIVER:1,MESSAGE_INITIATOR:2,CLOSE_RECEIVER:3,CLOSE_INITIATOR:4,RESET_RECEIVER:5,RESET_INITIATOR:6});t.MessageTypes=r,t.InitiatorMessageTypes=Object.freeze({NEW_STREAM:r.NEW_STREAM,MESSAGE:r.MESSAGE_INITIATOR,CLOSE:r.CLOSE_INITIATOR,RESET:r.RESET_INITIATOR}),t.ReceiverMessageTypes=Object.freeze({MESSAGE:r.MESSAGE_RECEIVER,CLOSE:r.CLOSE_RECEIVER,RESET:r.RESET_RECEIVER}),t.MessageTypeNames=Object.freeze(Object.entries(r).reduce(((e,t)=>(e[t[1]]=t[0],e)),{}))},47932:(e,t,r)=>{"use strict";const n=r(60618),i=r(84975),o=r(11227)("libp2p:mplex"),s=r(61623),a=r(73209),c=r(40092),{MessageTypes:u,MessageTypeNames:f}=r(82492),l=r(16048);class h{constructor(e){e="function"==typeof(e=e||{})?{onStream:e}:e,this._streamId=0,this._streams={initiators:new Map,receivers:new Map},this._options=e,this.sink=this._createSink(),this.source=this._createSource(),this.onStream=e.onStream,this.onStreamEnd=e.onStreamEnd}get streams(){const e=[];return this._streams.initiators.forEach((t=>{e.push(t)})),this._streams.receivers.forEach((t=>{e.push(t)})),e}newStream(e){const t=this._streamId++;e=null==e?t.toString():String(e);const r=this._streams.initiators;return this._newStream({id:t,name:e,type:"initiator",registry:r})}_newReceiverStream({id:e,name:t}){const r=this._streams.receivers;return this._newStream({id:e,name:t,type:"receiver",registry:r})}_newStream({id:e,name:t,type:r,registry:n}){if(n.has(e))throw new Error(`${r} stream ${e} already exists!`);o("new %s stream %s %s",r,e,t);const i=l({id:e,name:t,send:n=>(o.enabled&&o("%s stream %s %s send",r,e,t,{...n,type:f[n.type],data:n.data&&n.data.slice()}),this.source.push(n)),type:r,onEnd:()=>{o("%s stream %s %s ended",r,e,t),n.delete(e),this.onStreamEnd&&this.onStreamEnd(i)},maxMsgSize:this._options.maxMsgSize});return n.set(e,i),i}_createSink(){return async e=>{this._options.signal&&(e=s(e,this._options.signal));try{await n(e,a.decode,c(this._options.maxMsgSize),(async e=>{for await(const t of e)for(const e of t)this._handleIncoming(e)}))}catch(e){return o("error in sink",e),this.source.end(e)}this.source.end()}}_createSource(){const e=i({onEnd:e=>{const{initiators:t,receivers:r}=this._streams;for(const r of t.values())r.abort(e);for(const t of r.values())t.abort(e)},writev:!0});return Object.assign(a.encode(e),{push:e.push,end:e.end,return:e.return})}_handleIncoming({id:e,type:t,data:r}){if(o.enabled&&o("incoming message",{id:e,type:f[t],data:r.slice()}),t===u.NEW_STREAM&&this.onStream){const t=this._newReceiverStream({id:e,name:r.toString()});return this.onStream(t)}const n=(1&t?this._streams.initiators:this._streams.receivers).get(e);if(!n)return o("missing stream %s",e);switch(t){case u.MESSAGE_INITIATOR:case u.MESSAGE_RECEIVER:n.source.push(r);break;case u.CLOSE_INITIATOR:case u.CLOSE_RECEIVER:n.close();break;case u.RESET_INITIATOR:case u.RESET_RECEIVER:n.reset();break;default:o("unknown message type %s",t)}}}h.multicodec="/mplex/6.7.0",e.exports=h},40092:e=>{"use strict";const t=1<<20;e.exports=e=>{e=e||t;const r=t=>{if(t.data&&t.data.length>e)throw Object.assign(new Error("message size too large!"),{code:"ERR_MSG_TOO_BIG"})};return e=>async function*(){for await(const t of e)Array.isArray(t)?t.forEach(r):r(t),yield t}()},e.exports.MAX_MSG_SIZE=t},16048:(e,t,r)=>{"use strict";const n=r(61623),i=r(28599),o=r(11227)("libp2p:mplex:stream"),s=r(84975),a=r(13939),c=r(72842),{MAX_MSG_SIZE:u}=r(40092),{InitiatorMessageTypes:f,ReceiverMessageTypes:l}=r(82492),h="ERR_MPLEX_STREAM_RESET";e.exports=({id:e,name:t,send:r,onEnd:d=(()=>{}),type:p="initiator",maxMsgSize:y=u})=>{const g=new i,b=new i,m="initiator"===p?f:l,v="initiator"===p?`i${e}`:`r${e}`;t=String(null==t?e:t);let w,E=!1,_=!1;const S=e=>{_||(_=!0,o("%s stream %s sink end",p,t,e),e&&!w&&(w=e),E&&(A.timeline.close=Date.now(),d(w)))},A={close:()=>A.source.end(),abort:e=>{o("%s stream %s abort",p,t,e),A.source.end(e),g.abort(),S(e)},reset:()=>{const e=c(new Error("stream reset"),h);b.abort(),A.source.end(e),S(e)},sink:async i=>{i=n(i,[{signal:g.signal,options:{abortMessage:"stream aborted",abortCode:"ERR_MPLEX_STREAM_ABORT"}},{signal:b.signal,options:{abortMessage:"stream reset",abortCode:h}}]),"initiator"===p&&r({id:e,type:m.NEW_STREAM,data:t});try{for await(let t of i)for(;t.length;){if(t.length<=y){r({id:e,type:m.MESSAGE,data:t});break}t=a.isBufferList(t)?t:new a(t),r({id:e,type:m.MESSAGE,data:t.shallowSlice(0,y)}),t.consume(y)}}catch(n){return n.code===h?o("%s stream %s reset",p,t):(o("%s stream %s error",p,t,n),r({id:e,type:m.RESET})),A.source.end(n),S(n)}r({id:e,type:m.CLOSE}),S()},source:s((e=>{E||(E=!0,o("%s stream %s source end",p,t,e),e&&!w&&(w=e),_&&(A.timeline.close=Date.now(),d(w)))})),timeline:{open:Date.now(),close:null},id:v};return A}},53737:(e,t,r)=>{"use strict";const n=r(81980);function i(e,t){const r=n(e.multiaddr),i=n(t.multiaddr);return r&&!i?1:!r&&i||e.isCertified&&!t.isCertified?-1:!e.isCertified&&t.isCertified?1:0}e.exports.publicAddressesFirst=function(e){return[...e].sort(i)}},52942:e=>{"use strict";e.exports=function(e,t){return e.length===t.length&&t.sort()&&e.sort().every(((e,r)=>t[r].equals(e)))}},489:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:ip-port-to-multiaddr"),{error:n("libp2p:ip-port-to-multiaddr:err")}),{Multiaddr:o}=r(46584),s=r(32114),{Address4:a,Address6:c}=r(91843),u={ERR_INVALID_IP_PARAMETER:"ERR_INVALID_IP_PARAMETER",ERR_INVALID_PORT_PARAMETER:"ERR_INVALID_PORT_PARAMETER",ERR_INVALID_IP:"ERR_INVALID_IP"};e.exports=function(e,t){if("string"!=typeof e)throw s(new Error(`invalid ip provided: ${e}`),u.ERR_INVALID_IP_PARAMETER);if("string"==typeof t&&(t=parseInt(t)),isNaN(t))throw s(new Error(`invalid port provided: ${t}`),u.ERR_INVALID_PORT_PARAMETER);try{return new a(e),new o(`/ip4/${e}/tcp/${t}`)}catch{}try{const r=new c(e);return r.is4()?new o(`/ip4/${r.to4().correctForm()}/tcp/${t}`):new o(`/ip6/${e}/tcp/${t}`)}catch(r){const n=`invalid ip:port for creating a multiaddr: ${e}:${t}`;throw i.error(n),s(new Error(n),u.ERR_INVALID_IP)}},e.exports.Errors=u},23830:(e,t,r)=>{"use strict";const n=r(51890);e.exports=function(e){const{address:t}=e.nodeAddress();return n(t)}},81980:(e,t,r)=>{"use strict";const n=r(290);e.exports=function(e){const{address:t}=e.nodeAddress();return n(t)}},15091:(e,t,r)=>{"use strict";const{source:n}=r(61623),i=r(11227)("libp2p:stream:converter");e.exports=function({stream:e,remoteAddr:t,localAddr:r},o={}){const{sink:s,source:a}=e,c={async sink(e){o.signal&&(e=n(e,o.signal));try{await s(e)}catch(e){"aborted"!==e.type&&i(e)}u()},source:o.signal?n(a,o.signal):a,conn:e,localAddr:r,remoteAddr:t,timeline:{open:Date.now(),close:void 0},close:()=>(s(new Uint8Array(0)),u())};function u(){return c.timeline.close||(c.timeline.close=Date.now()),Promise.resolve()}return c}},16288:(e,t,r)=>{"use strict";var n=r(34155);const i=r(59134),o="object"==typeof window&&"object"==typeof document&&9===document.nodeType,s=i(),a=o&&!s,c=s&&!o,u=s&&o,f=void 0!==n&&void 0!==n.release&&"node"===n.release.name&&!s,l="function"==typeof importScripts&&"undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,h=void 0!==n&&void 0!==n.env&&!1,d="undefined"!=typeof navigator&&"ReactNative"===navigator.product;e.exports={isTest:h,isElectron:s,isElectronMain:c,isElectronRenderer:u,isNode:f,isBrowser:a,isWebWorker:l,isEnvWithDom:o,isReactNative:d}},61073:(e,t,r)=>{const{Multiaddr:n}=r(46584),i=(e,t)=>t,o={ip4:i,ip6:(e,t,r,n)=>1===n.length&&"ip6"===n[0].protocol?t:`[${t}]`,tcp:(e,t,r,n,i)=>n.some((e=>["http","https","ws","wss"].includes(e.protocol)))?`${e}:${t}`:((e,t,r,n)=>{if(n&&!1===n.assumeHttp)return`tcp://${e}:${t}`;let i="tcp",o=`:${t}`;return"tcp"===r[r.length-1].protocol&&(i="443"===t?"https":"http",o="443"===t||"80"===t?"":o),`${i}://${e}${o}`})(e,t,n,i),udp:(e,t)=>`udp://${e}:${t}`,dnsaddr:i,dns4:i,dns6:i,ipfs:(e,t)=>`${e}/ipfs/${t}`,p2p:(e,t)=>`${e}/p2p/${t}`,http:e=>`http://${e}`,https:e=>`https://${e}`,ws:e=>`ws://${e}`,wss:e=>`wss://${e}`,"p2p-websocket-star":e=>`${e}/p2p-websocket-star`,"p2p-webrtc-star":e=>`${e}/p2p-webrtc-star`,"p2p-webrtc-direct":e=>`${e}/p2p-webrtc-direct`};e.exports=(e,t)=>{const r=new n(e),i=e.toString().split("/").slice(1);return r.tuples().map((e=>({protocol:i.shift(),content:e[1]?i.shift():null}))).reduce(((e,r,n,i)=>{const s=o[r.protocol];if(!s)throw new Error(`Unsupported protocol ${r.protocol}`);return s(e,r.content,n,i,t)}),"")}},33199:(e,t)=>{"use strict";t.CODE_P2P=421,t.CODE_CIRCUIT=290,t.CODE_TCP=6,t.CODE_WS=477,t.CODE_WSS=478,t.CLOSE_TIMEOUT=2e3},70040:(e,t,r)=>{"use strict";const n=r(29175),{CODE_CIRCUIT:i,CODE_P2P:o,CODE_TCP:s,CODE_WS:a,CODE_WSS:c}=r(33199);e.exports={all:e=>e.filter((e=>{if(e.protoCodes().includes(i))return!1;const t=e.decapsulateCode(o);return n.WebSockets.matches(t)||n.WebSocketsSecure.matches(t)})),dnsWss:e=>e.filter((e=>{if(e.protoCodes().includes(i))return!1;const t=e.decapsulateCode(o);return n.WebSocketsSecure.matches(t)&&n.DNS.matches(t.decapsulateCode(s).decapsulateCode(c))})),dnsWsOrWss:e=>e.filter((e=>{if(e.protoCodes().includes(i))return!1;const t=e.decapsulateCode(o);return n.WebSockets.matches(t)?n.DNS.matches(t.decapsulateCode(s).decapsulateCode(a)):n.WebSocketsSecure.matches(t)&&n.DNS.matches(t.decapsulateCode(s).decapsulateCode(c))}))}},29846:(e,t,r)=>{"use strict";const n=r(6476),i=r(98514),o=r(61073),{AbortError:s}=r(61623),a=r(63931),c=r(11227),u=c("libp2p:websockets");u.error=c("libp2p:websockets:error");const f=r(16288),l=r(89174),h=r(10863),d=r(70040);e.exports=i(class{constructor({upgrader:e,filter:t}){if(!e)throw new Error("An upgrader must be provided. See https://github.com/libp2p/interface-transport#upgrader.");this._upgrader=e,this._filter=t}async dial(e,t={}){u("dialing %s",e);const r=await this._connect(e,t),n=h(r,{remoteAddr:e,signal:t.signal});u("new outbound connection %s",n.remoteAddr);const i=await this._upgrader.upgradeOutbound(n);return u("outbound connection %s upgraded",n.remoteAddr),i}async _connect(e,t={}){if(t.signal&&t.signal.aborted)throw new s;const r=e.toOptions();u("dialing %s:%s",r.host,r.port);const i=a(),c=e=>{const t=`connection error: ${e.message}`;u.error(t),i.reject(e)},f=n(o(e),Object.assign({binary:!0},t));if(f.socket.on?f.socket.on("error",c):f.socket.onerror=c,!t.signal)return await Promise.race([f.connected(),i.promise]),u("connected %s",e),f;let l;const h=new Promise(((e,r)=>{if(l=()=>{r(new s),setTimeout((()=>{f.close()}))},t.signal.aborted)return l();t.signal.addEventListener("abort",l)}));try{await Promise.race([h,i.promise,f.connected()])}finally{t.signal.removeEventListener("abort",l)}return u("connected %s",e),f}createListener(e={},t){return"function"==typeof e&&(t=e,e={}),l({handler:t,upgrader:this._upgrader},e)}filter(e){return e=Array.isArray(e)?e:[e],this._filter?this._filter(e):f.isBrowser||f.isWebWorker?d.dnsWss(e):d.all(e)}},{className:"WebSockets",symbolName:"@libp2p/js-libp2p-websockets/websockets"})},89174:e=>{"use strict";e.exports=function(){throw new Error("WebSocket Servers can not be created in the browser!")}},10863:(e,t,r)=>{"use strict";const n=r(61623),{CLOSE_TIMEOUT:i}=r(33199),o=r(489),s=r(58147),a=r(11227),c=a("libp2p:websockets:socket");c.error=a("libp2p:websockets:socket:error"),e.exports=(e,t={})=>{const r={async sink(r){t.signal&&(r=n(r,t.signal));try{await e.sink(async function*(){for await(const e of r)yield e instanceof Uint8Array?e:e.slice()}())}catch(e){"aborted"!==e.type&&c.error(e)}},source:t.signal?n(e.source,t.signal):e.source,conn:e,localAddr:t.localAddr||(e.localAddress&&e.localPort?o(e.localAddress,e.localPort):void 0),remoteAddr:t.remoteAddr||o(e.remoteAddress,e.remotePort),timeline:{open:Date.now()},async close(){const t=Date.now();try{await s(e.close(),i)}catch(n){const{host:i,port:o}=r.remoteAddr.toOptions();c("timeout closing stream to %s:%s after %dms, destroying it manually",i,o,Date.now()-t),e.destroy()}finally{r.timeline.close=Date.now()}}};return e.socket.once&&e.socket.once("close",(()=>{r.timeline.close||(r.timeline.close=Date.now())})),r}},72826:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(56842),s=4194304,a=n.alloc(0),c="readLength",u="readData",f={[c]:(e,t,r,n)=>{let o;t=t.append(e);try{o=n.lengthDecoder(t)}catch(e){if(t.length>n.maxLengthLength)throw Object.assign(e,{message:"message length too long",code:"ERR_MSG_LENGTH_TOO_LONG"});if(e instanceof RangeError)return{mode:c,buffer:t,chunk:void 0,state:void 0,data:void 0};throw e}if(o>n.maxDataLength)throw Object.assign(new Error("message data too long"),{code:"ERR_MSG_DATA_TOO_LONG"});return e=t.shallowSlice(n.lengthDecoder.bytes),t=new i,n.onLength&&n.onLength(o),o<=0?(n.onData&&n.onData(a),{mode:c,chunk:e,buffer:t,data:a}):{mode:u,chunk:e,buffer:t,state:{dataLength:o},data:void 0}},[u]:(e,t,r,n)=>{if(t=t.append(e),!r)throw new Error("state is required");if(t.lengtho?t.shallowSlice(o):void 0;return t=new i,n.onData&&n.onData(s),{mode:c,chunk:a,buffer:t,state:void 0,data:s}}};function l(e){const t={lengthDecoder:(e=e||{}).lengthDecoder||o,maxLengthLength:e.maxLengthLength||8,maxDataLength:e.maxDataLength||s,onLength:e.onLength,onData:e.onData};return async function*(e){let r,n=new i,o=c;for await(const i of e){let e=i;for(;e;){const i=f[o](e,n,r,t);o=i.mode,e=i.chunk,n=i.buffer,r=i.state,i.data&&(yield i.data)}}if(n.length)throw Object.assign(new Error("unexpected end of input"),{code:"ERR_UNEXPECTED_EOF"})}}l.fromReader=(e,t)=>{let r=1;const n={[Symbol.asyncIterator](){return this},next:async()=>{try{return await e.next(r)}catch(e){if("ERR_UNDER_READ"===e.code)return{done:!0,value:null};throw e}finally{r=1}}};return l({...t||{},onLength:e=>{r=e}})(n)},e.exports=l,e.exports.MAX_LENGTH_LENGTH=8,e.exports.MAX_DATA_LENGTH=s},50396:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(60911);function s(e){e=e||{};const t=Math.max(e.poolSize||10240,e.minPoolSize||8),r=e.lengthEncoder||o;return async function*(e){let o=n.alloc(t),s=0;for await(const a of e){r(a.length,o,s);const e=o.slice(s,s+r.bytes);s+=r.bytes,o.length-s<8&&(o=n.alloc(t),s=0),yield(new i).append(e).append(a)}}}s.single=(e,t)=>{const r=(t=t||{}).lengthEncoder||o;return new i([r(e.length),e.slice()])},e.exports=s,e.exports.MIN_POOL_SIZE=8,e.exports.DEFAULT_POOL_SIZE=10240},63500:(e,t,r)=>{"use strict";t.encode=r(50396),t.decode=r(72826),t.varintEncode=r(60911),t.varintDecode=r(56842),t.int32BEEncode=r(22660),t.int32BEDecode=r(3100)},3100:e=>{"use strict";const t=e=>{if(e.length<4)throw RangeError("Could not decode int32BE");return e.readInt32BE(0)};t.bytes=4,e.exports=t},22660:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=(e,t,r)=>((t=t||n.allocUnsafe(4)).writeInt32BE(e,r),t);i.bytes=4,e.exports=i},56842:(e,t,r)=>{"use strict";const n=r(31997),{Buffer:i}=r(48764),o=e=>{const t=n.decode(i.isBuffer(e)?e:(r=e,new Proxy({},{get:(e,t)=>"l"===t[0]?r[t]:r.get(parseInt(t))})));var r;return o.bytes=n.decode.bytes,t};e.exports=o},60911:(e,t,r)=>{"use strict";const n=r(31997),{Buffer:i}=r(48764),o=(e,t,r)=>{const s=n.encode(e,t,r);return o.bytes=n.encode.bytes,t||i.from(s)};e.exports=o},78621:(e,t,r)=>{"use strict";const n=r(32114),i={16:"aes-128-ctr",32:"aes-256-ctr"};e.exports=function(e){const t=i[e.length];if(!t){const t=Object.entries(i).map((([e,t])=>`${e} (${t})`)).join(" / ");throw n(new Error(`Invalid key length ${e.length} bytes. Must be ${t}`),"ERR_INVALID_KEY_LENGTH")}return t}},76590:(e,t,r)=>{"use strict";r(8925);const n=r(3832),{toString:i}=r(92263),{fromString:o}=r(52217);e.exports={createCipheriv:(e,t,r)=>{const s=n.cipher.createCipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}},createDecipheriv:(e,t,r)=>{const s=n.cipher.createDecipher("AES-CTR",i(t,"ascii"));return s.start({iv:i(r,"ascii")}),{update:e=>(s.update(n.util.createBuffer(i(e,"ascii"))),o(s.output.getBytes(),"ascii"))}}}},32100:(e,t,r)=>{"use strict";const n=r(76590),i=r(78621);t.create=async function(e,t){const r=i(e),o=n.createCipheriv(r,e,t),s=n.createDecipheriv(r,e,t);return{encrypt:async e=>o.update(e),decrypt:async e=>s.update(e)}}},92485:(e,t,r)=>{"use strict";const{concat:n}=r(20605),{fromString:i}=r(52217),o=r(87518);e.exports={create:function({algorithm:e="AES-GCM",nonceLength:t=12,keyLength:r=16,digest:s="SHA-256",saltLength:a=16,iterations:c=32767}={}){const u=o.get();return r*=8,{encrypt:async function(o,f){const l=u.getRandomValues(new Uint8Array(a)),h=u.getRandomValues(new Uint8Array(t)),d={name:e,iv:h},p={name:"PBKDF2",salt:l,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(f),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["encrypt"]),b=await u.subtle.encrypt(d,g,o);return n([l,d.iv,new Uint8Array(b)])},decrypt:async function(n,o){const f=n.slice(0,a),l=n.slice(a,a+t),h=n.slice(a+t),d={name:e,iv:l},p={name:"PBKDF2",salt:f,iterations:c,hash:{name:s}},y=await u.subtle.importKey("raw",i(o),{name:"PBKDF2"},!1,["deriveKey","deriveBits"]),g=await u.subtle.deriveKey(p,y,{name:e,length:r},!0,["decrypt"]),b=await u.subtle.decrypt(d,g,h);return new Uint8Array(b)}}}}},48690:(e,t,r)=>{"use strict";const n=r(87518),i=r(36482),o={SHA1:"SHA-1",SHA256:"SHA-256",SHA512:"SHA-512"};t.create=async function(e,t){const r=o[e],s=await n.get().subtle.importKey("raw",t,{name:"HMAC",hash:{name:r}},!1,["sign"]);return{digest:async e=>(async(e,t)=>{const r=await n.get().subtle.sign({name:"HMAC"},e,t);return new Uint8Array(r,r.byteOffset,r.byteLength)})(s,e),length:i[e]}}},36482:e=>{"use strict";e.exports={SHA1:20,SHA256:32,SHA512:64}},49928:(e,t,r)=>{"use strict";const n=r(48690),i=r(32100),o=r(92826);t.aes=i,t.hmac=n,t.keys=o,t.randomBytes=r(53890),t.pbkdf2=r(57493)},18294:(e,t,r)=>{"use strict";const n=r(32114),i=r(87518),{base64urlToBuffer:o}=r(28894),s=r(50439),{toString:a}=r(92263),{concat:c}=r(20605),{equals:u}=r(19588),f={"P-256":256,"P-384":384,"P-521":521};t.generateEphmeralKeyPair=async function(e){s(Object.keys(f),e);const t=await i.get().subtle.generateKey({name:"ECDH",namedCurve:e},!0,["deriveBits"]);return{key:h(await i.get().subtle.exportKey("jwk",t.publicKey)),genSharedKey:async(r,n)=>{let o;o=n?await i.get().subtle.importKey("jwk",p(e,n),{name:"ECDH",namedCurve:e},!1,["deriveBits"]):t.privateKey;const s=[await i.get().subtle.importKey("jwk",d(e,r),{name:"ECDH",namedCurve:e},!1,[]),o],a=await i.get().subtle.deriveBits({name:"ECDH",namedCurve:e,public:s[0]},s[1],f[e]);return new Uint8Array(a,a.byteOffset,a.byteLength)}}};const l={"P-256":32,"P-384":48,"P-521":66};function h(e){const t=l[e.crv];return c([Uint8Array.from([4]),o(e.x,t),o(e.y,t)],1+2*t)}function d(e,t){const r=l[e];if(u(!t.slice(0,1),Uint8Array.from([4])))throw n(new Error("Cannot unmarshal public key - invalid key format"),"ERR_INVALID_KEY_FORMAT");return{kty:"EC",crv:e,x:a(t.slice(1,r+1),"base64url"),y:a(t.slice(1+r),"base64url"),ext:!0}}const p=(e,t)=>({...d(e,t.public),d:a(t.private,"base64url")})},23924:(e,t,r)=>{"use strict";const n=r(32114),{equals:i}=r(19588),{sha256:o}=r(56155),{base58btc:s}=r(99086),{identity:a}=r(78103),c=r(57217),u=r(5345),f=r(70427);class l{constructor(e){this._key=d(e,c.publicKeyLength)}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return this._key}get bytes(){return u.PublicKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}}class h{constructor(e,t){this._key=d(e,c.privateKeyLength),this._publicKey=d(t,c.publicKeyLength)}async sign(e){return c.hashAndSign(this._key,e)}get public(){return new l(this._publicKey)}marshal(){return this._key}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.Ed25519,Data:this.marshal()}).finish()}equals(e){return i(this.bytes,e.bytes)}async hash(){const{bytes:e}=await o.digest(this.bytes);return e}async id(){const e=await a.digest(this.public.bytes);return s.encode(e.bytes).substring(1)}async export(e,t="libp2p-key"){if("libp2p-key"===t)return f.export(this.bytes,e);throw n(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}function d(e,t){if((e=Uint8Array.from(e||[])).length!==t)throw n(new Error(`Key must be a Uint8Array of length ${t}, got ${e.length}`),"ERR_INVALID_KEY_TYPE");return e}e.exports={Ed25519PublicKey:l,Ed25519PrivateKey:h,unmarshalEd25519PrivateKey:function(e){if(e.length>c.privateKeyLength){const t=(e=d(e,c.privateKeyLength+c.publicKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.privateKeyLength,e.length);return new h(t,r)}const t=(e=d(e,c.privateKeyLength)).slice(0,c.privateKeyLength),r=e.slice(c.publicKeyLength);return new h(t,r)},unmarshalEd25519PublicKey:function(e){return e=d(e,c.publicKeyLength),new l(e)},generateKeyPair:async function(){const{privateKey:e,publicKey:t}=await c.generateKey();return new h(e,t)},generateKeyPairFromSeed:async function(e){const{privateKey:t,publicKey:r}=await c.generateKeyFromSeed(e);return new h(t,r)}}},57217:(e,t,r)=>{"use strict";r(80069);const n=r(3832);t.publicKeyLength=n.pki.ed25519.constants.PUBLIC_KEY_BYTE_LENGTH,t.privateKeyLength=n.pki.ed25519.constants.PRIVATE_KEY_BYTE_LENGTH,t.generateKey=async function(){return n.pki.ed25519.generateKeyPair()},t.generateKeyFromSeed=async function(e){return n.pki.ed25519.generateKeyPair({seed:e})},t.hashAndSign=async function(e,t){return n.pki.ed25519.sign({message:t,privateKey:e})},t.hashAndVerify=async function(e,t,r){return n.pki.ed25519.verify({signature:t,message:r,publicKey:e})}},74340:(e,t,r)=>{"use strict";const n=r(18294);e.exports=async e=>n.generateEphmeralKeyPair(e)},70427:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(92485);e.exports={export:async function(e,t){const r=i.create(),o=await r.encrypt(e,t);return n.encode(o)}}},75475:(e,t,r)=>{"use strict";const{base64:n}=r(9885),i=r(92485);e.exports={import:async function(e,t){const r=n.decode(e),o=i.create();return await o.decrypt(r,t)}}},92826:(e,t,r)=>{"use strict";const n=r(5345);r(3068),r(97450);const i=r(3832),o=r(32114),{fromString:s}=r(52217),a=r(75475),c={rsa:r(42162),ed25519:r(23924),secp256k1:r(9321)(n,r(53890))},u="secp256k1 support requires libp2p-crypto-secp256k1 package",f="ERR_MISSING_PACKAGE";function l(e){const t=c[e.toLowerCase()];if(!t){const t=Object.keys(c).join(" / ");throw o(new Error(`invalid or unsupported key type ${e}. Must be ${t}`),"ERR_UNSUPPORTED_KEY_TYPE")}return t}const h=async e=>{const t=n.PrivateKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPrivateKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PrivateKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PrivateKey(r);throw o(new Error(u),f);default:l(t.Type)}};e.exports={supportedKeys:c,keysPBM:n,keyStretcher:r(65954),generateEphemeralKeyPair:r(74340),generateKeyPair:async(e,t)=>l(e).generateKeyPair(t),generateKeyPairFromSeed:async(e,t,r)=>{const n=l(e);if("ed25519"!==e.toLowerCase())throw o(new Error("Seed key derivation is unimplemented for RSA or secp256k1"),"ERR_UNSUPPORTED_KEY_DERIVATION_TYPE");return n.generateKeyPairFromSeed(t,r)},unmarshalPublicKey:e=>{const t=n.PublicKey.decode(e),r=t.Data;switch(t.Type){case n.KeyType.RSA:return c.rsa.unmarshalRsaPublicKey(r);case n.KeyType.Ed25519:return c.ed25519.unmarshalEd25519PublicKey(r);case n.KeyType.Secp256k1:if(c.secp256k1)return c.secp256k1.unmarshalSecp256k1PublicKey(r);throw o(new Error(u),f);default:l(t.Type)}},marshalPublicKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),unmarshalPrivateKey:h,marshalPrivateKey:(e,t)=>(l(t=(t||"rsa").toLowerCase()),e.bytes),import:async(e,t)=>{try{const r=await a.import(e,t);return h(r)}catch(e){}const r=i.pki.decryptRsaPrivateKey(e,t);if(null===r)throw o(new Error("Cannot read the key, most likely the password is wrong or not a RSA key"),"ERR_CANNOT_DECRYPT_PEM");let n=i.asn1.toDer(i.pki.privateKeyToAsn1(r));return n=s(n.getBytes(),"ascii"),c.rsa.unmarshalRsaPrivateKey(n)}}},75396:(e,t,r)=>{"use strict";r(28095);const n=r(3832),{base64urlToBigInteger:i}=r(28894);function o(e,t){return t.map((t=>i(e[t])))}e.exports={jwk2pub:function(e){return n.pki.setRsaPublicKey(...o(e,["n","e"]))},jwk2priv:function(e){return n.pki.setRsaPrivateKey(...o(e,["n","e","d","p","q","dp","dq","qi"]))}}},65954:(e,t,r)=>{"use strict";const n=r(32114),{concat:i}=r(20605),{fromString:o}=r(52217),s=r(48690),a={"AES-128":{ivSize:16,keySize:16},"AES-256":{ivSize:16,keySize:32},Blowfish:{ivSize:8,cipherKeySize:32}};e.exports=async(e,t,r)=>{const c=a[e];if(!c){const t=Object.keys(a).join(" / ");throw n(new Error(`unknown cipher type '${e}'. Must be ${t}`),"ERR_INVALID_CIPHER_TYPE")}if(!t)throw n(new Error("missing hash type"),"ERR_MISSING_HASH_TYPE");const u=c.keySize,f=c.ivSize,l=o("key expansion"),h=2*(f+u+20),d=await s.create(t,r);let p=await d.digest(l);const y=[];let g=0;for(;gh&&(t=h-g),y.push(e),g+=t,p=await d.digest(p)}const b=h/2,m=i(y),v=m.slice(0,b),w=m.slice(b,h),E=e=>({iv:e.slice(0,f),cipherKey:e.slice(f,f+u),macKey:e.slice(f+u)});return{k1:E(v),k2:E(w)}}},5345:(e,t,r)=>{"use strict";var n,i,o=r(62100),s=o.Reader,a=o.Writer,c=o.util,u=o.roots["libp2p-crypto-keys"]||(o.roots["libp2p-crypto-keys"]={});u.KeyType=(n={},(i=Object.create(n))[n[0]="RSA"]=0,i[n[1]="Ed25519"]=1,i[n[2]="Secp256k1"]=2,i),u.PublicKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PublicKey)return e;var t=new u.PublicKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),u.PrivateKey=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.Type=e.int32();break;case 2:n.Data=e.bytes();break;default:e.skipType(7&i)}}if(!n.hasOwnProperty("Type"))throw c.ProtocolError("missing required 'Type'",{instance:n});if(!n.hasOwnProperty("Data"))throw c.ProtocolError("missing required 'Data'",{instance:n});return n},e.fromObject=function(e){if(e instanceof u.PrivateKey)return e;var t=new u.PrivateKey;switch(e.Type){case"RSA":case 0:t.Type=0;break;case"Ed25519":case 1:t.Type=1;break;case"Secp256k1":case 2:t.Type=2}return null!=e.Data&&("string"==typeof e.Data?c.base64.decode(e.Data,t.Data=c.newBuffer(c.base64.length(e.Data)),0):e.Data.length&&(t.Data=e.Data)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.Type=t.enums===String?"RSA":0,t.bytes===String?r.Data="":(r.Data=[],t.bytes!==Array&&(r.Data=c.newBuffer(r.Data)))),null!=e.Type&&e.hasOwnProperty("Type")&&(r.Type=t.enums===String?u.KeyType[e.Type]:e.Type),null!=e.Data&&e.hasOwnProperty("Data")&&(r.Data=t.bytes===String?c.base64.encode(e.Data,0,e.Data.length):t.bytes===Array?Array.prototype.slice.call(e.Data):e.Data),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,o.util.toJSONOptions)},e}(),e.exports=u},41860:(e,t,r)=>{"use strict";const n=r(87518),i=r(53890),{toString:o}=r(92263),{fromString:s}=r(52217);function a(e){return Promise.all([n.get().subtle.exportKey("jwk",e.privateKey),n.get().subtle.exportKey("jwk",e.publicKey)])}t.utils=r(48707),t.generateKey=async function(e){const t=await n.get().subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:new Uint8Array([1,0,1]),hash:{name:"SHA-256"}},!0,["sign","verify"]),r=await a(t);return{privateKey:r[0],publicKey:r[1]}},t.unmarshalPrivateKey=async function(e){const t=[await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["sign"]),await(r=e,n.get().subtle.importKey("jwk",{kty:r.kty,n:r.n,e:r.e},{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!0,["verify"]))];var r;const i=await a({privateKey:t[0],publicKey:t[1]});return{privateKey:i[0],publicKey:i[1]}},t.getRandomValues=i,t.hashAndSign=async function(e,t){const r=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["sign"]),i=await n.get().subtle.sign({name:"RSASSA-PKCS1-v1_5"},r,Uint8Array.from(t));return new Uint8Array(i,i.byteOffset,i.byteLength)},t.hashAndVerify=async function(e,t,r){const i=await n.get().subtle.importKey("jwk",e,{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}},!1,["verify"]);return n.get().subtle.verify({name:"RSASSA-PKCS1-v1_5"},i,t,r)};const{jwk2pub:c,jwk2priv:u}=r(75396);function f(e,t,r,n){const i=t?c(e):u(e),a=n(o(Uint8Array.from(r),"ascii"),i);return s(a,"ascii")}t.encrypt=function(e,t){return f(e,!0,t,((e,t)=>t.encrypt(e)))},t.decrypt=function(e,t){return f(e,!1,t,((e,t)=>t.decrypt(e)))}},42162:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263);r(63219),r(80069);const a=r(3832),c=r(41860),u=r(5345),f=r(70427);class l{constructor(e){this._key=e}async verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.utils.jwkToPkix(this._key)}get bytes(){return u.PublicKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}encrypt(e){return c.encrypt(this._key,e)}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class h{constructor(e,t){this._key=e,this._publicKey=t}genSecret(){return c.getRandomValues(16)}async sign(e){return c.hashAndSign(this._key,e)}get public(){if(!this._publicKey)throw i(new Error("public key not provided"),"ERR_PUBKEY_NOT_PROVIDED");return new l(this._publicKey)}decrypt(e){return c.decrypt(this._key,e)}marshal(){return c.utils.jwkToPkcs1(this._key)}get bytes(){return u.PrivateKey.encode({Type:u.KeyType.RSA,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="pkcs-8"){if("pkcs-8"===t){const t=new a.util.ByteBuffer(this.marshal()),r=a.asn1.fromDer(t),n=a.pki.privateKeyFromAsn1(r),i={algorithm:"aes256",count:1e4,saltSize:16,prfAlgorithm:"sha512"};return a.pki.encryptRsaPrivateKey(n,e,i)}if("libp2p-key"===t)return f.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}e.exports={RsaPublicKey:l,RsaPrivateKey:h,unmarshalRsaPublicKey:function(e){const t=c.utils.pkixToJwk(e);return new l(t)},unmarshalRsaPrivateKey:async function(e){const t=c.utils.pkcs1ToJwk(e),r=await c.unmarshalPrivateKey(t);return new h(r.privateKey,r.publicKey)},generateKeyPair:async function(e){const t=await c.generateKey(e);return new h(t.privateKey,t.publicKey)},fromJwk:async function(e){const t=await c.unmarshalPrivateKey(e);return new h(t.privateKey,t.publicKey)}}},48707:(e,t,r)=>{"use strict";r(3068),r(28095);const n=r(3832),{bigIntegerToUintBase64url:i,base64urlToBigInteger:o}=r(28894),{fromString:s}=r(52217),{toString:a}=r(92263);t.pkcs1ToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.privateKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),d:i(r.d),p:i(r.p),q:i(r.q),dp:i(r.dP),dq:i(r.dQ),qi:i(r.qInv),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkcs1=function(e){const t=n.pki.privateKeyToAsn1({n:o(e.n),e:o(e.e),d:o(e.d),p:o(e.p),q:o(e.q),dP:o(e.dp),dQ:o(e.dq),qInv:o(e.qi)});return s(n.asn1.toDer(t).getBytes(),"ascii")},t.pkixToJwk=function(e){const t=n.asn1.fromDer(a(e,"ascii")),r=n.pki.publicKeyFromAsn1(t);return{kty:"RSA",n:i(r.n),e:i(r.e),alg:"RS256",kid:"2011-04-29"}},t.jwkToPkix=function(e){const t=n.pki.publicKeyToAsn1({n:o(e.n),e:o(e.e)});return s(n.asn1.toDer(t).getBytes(),"ascii")}},9321:(e,t,r)=>{"use strict";const{sha256:n}=r(56155),i=r(32114),{equals:o}=r(19588),{toString:s}=r(92263),a=r(70427);e.exports=(e,t,c)=>{c=c||r(76835)(t);class u{constructor(e){c.validatePublicKey(e),this._key=e}verify(e,t){return c.hashAndVerify(this._key,t,e)}marshal(){return c.compressPublicKey(this._key)}get bytes(){return e.PublicKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}}class f{constructor(e,t){this._key=e,this._publicKey=t||c.computePublicKey(e),c.validatePrivateKey(this._key),c.validatePublicKey(this._publicKey)}sign(e){return c.hashAndSign(this._key,e)}get public(){return new u(this._publicKey)}marshal(){return this._key}get bytes(){return e.PrivateKey.encode({Type:e.KeyType.Secp256k1,Data:this.marshal()}).finish()}equals(e){return o(this.bytes,e.bytes)}async hash(){const{bytes:e}=await n.digest(this.bytes);return e}async id(){const e=await this.public.hash();return s(e,"base58btc")}async export(e,t="libp2p-key"){if("libp2p-key"===t)return a.export(this.bytes,e);throw i(new Error(`export format '${t}' is not supported`),"ERR_INVALID_EXPORT_FORMAT")}}return{Secp256k1PublicKey:u,Secp256k1PrivateKey:f,unmarshalSecp256k1PrivateKey:function(e){return new f(e)},unmarshalSecp256k1PublicKey:function(e){return new u(e)},generateKeyPair:async function(){const e=await c.generateKey();return new f(e)}}}},76835:(e,t,r)=>{"use strict";const n=r(17221),{sha256:i}=r(56155);e.exports=e=>{function t(e){if(!n.privateKeyVerify(e))throw new Error("Invalid private key")}return{generateKey:function(){let t;do{t=e(32)}while(!n.privateKeyVerify(t));return t},privateKeyLength:32,hashAndSign:async function(e,t){const{digest:r}=await i.digest(t),o=n.ecdsaSign(r,e);return n.signatureExport(o.signature)},hashAndVerify:async function(e,t,r){const{digest:o}=await i.digest(r);return t=n.signatureImport(t),n.ecdsaVerify(t,o,e)},compressPublicKey:function(e){if(!n.publicKeyVerify(e))throw new Error("Invalid public key");return n.publicKeyConvert(e,!0)},decompressPublicKey:function(e){return n.publicKeyConvert(e,!1)},validatePrivateKey:t,validatePublicKey:function(e){if(!n.publicKeyVerify(e))throw new Error("Invalid public key")},computePublicKey:function(e){return t(e),n.publicKeyCreate(e)}}}},50439:(e,t,r)=>{"use strict";const n=r(32114);e.exports=function(e,t){if(!e.includes(t)){const r=e.join(" / ");throw n(new Error(`Unknown curve: ${t}. Must be ${r}`),"ERR_INVALID_CURVE")}}},57493:(e,t,r)=>{"use strict";const n=r(98960),i=r(97116),o=r(32114),s={sha1:"sha1","sha2-256":"sha256","sha2-512":"sha512"};e.exports=function(e,t,r,a,c){const u=s[c];if(!u){const e=Object.keys(s).join(" / ");throw o(new Error(`Hash '${c}' is unknown or not supported. Must be ${e}`),"ERR_UNSUPPORTED_HASH_TYPE")}const f=n(e,t,r,a,u);return i.encode64(f)}},53890:(e,t,r)=>{"use strict";const n=r(1914),i=r(32114);e.exports=function(e){if(isNaN(e)||e<=0)throw i(new Error("random bytes length must be a Number bigger than 0"),"ERR_INVALID_LENGTH");return n(e)}},28894:(e,t,r)=>{"use strict";r(97116),r(15764);const n=r(3832),{fromString:i}=r(52217),{toString:o}=r(92263),{concat:s}=r(20605);t.bigIntegerToUintBase64url=(e,t)=>{let r=Uint8Array.from(e.abs().toByteArray());if(r=0===r[0]?r.slice(1):r,null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return o(r,"base64url")},t.base64urlToBigInteger=e=>{const r=t.base64urlToBuffer(e);return new n.jsbn.BigInteger(o(r,"base16"),16)},t.base64urlToBuffer=(e,t)=>{let r=i(e,"base64urlpad");if(null!=t){if(r.length>t)throw new Error("byte array longer than desired length");r=s([new Uint8Array(t-r.length),r])}return r}},87518:(e,t)=>{"use strict";t.get=(e=self)=>{const t=e.crypto||e.msCrypto;if(!t||!t.subtle)throw Object.assign(new Error("Missing Web Crypto API. The most likely cause of this error is that this page is being accessed from an insecure context (i.e. not HTTPS). For more information and possible resolutions see https://github.com/libp2p/js-libp2p-crypto/blob/master/README.md#web-crypto-api"),{code:"ERR_MISSING_WEB_CRYPTO"});return t}},54808:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},17471:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},31997:(e,t,r)=>{e.exports={encode:r(17471),decode:r(54808),encodingLength:r(21941)}},21941:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";const{EventEmitter:n}=r(17187),{Multiaddr:i}=r(46584),o=r(88785);e.exports=class extends n{constructor(e,{listen:t=[],announce:r=[]}={}){super(),this.peerId=e,this.listen=new Set(t.map((e=>e.toString()))),this.announce=new Set(r.map((e=>e.toString()))),this.observed=new Set}getListenAddrs(){return Array.from(this.listen).map((e=>new i(e)))}getAnnounceAddrs(){return Array.from(this.announce).map((e=>new i(e)))}getObservedAddrs(){return Array.from(this.observed).map((e=>new i(e)))}addObservedAddr(e){let t=new i(e);const r=t.getPeerId();r&&o.createFromB58String(r).equals(this.peerId)&&(t=t.decapsulate(new i(`/p2p/${this.peerId}`)));const n=t.toString();this.observed.has(n)||(this.observed.add(n),this.emit("change:addresses"))}}},58126:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:auto-relay"),{error:n("libp2p:auto-relay:err")}),{fromString:o}=r(52217),{toString:s}=r(92263),{Multiaddr:a}=r(46584),c=r(88785),{relay:u}=r(49284),{canHop:f}=r(71466),{namespaceToCid:l}=r(32497),{CIRCUIT_PROTO_CODE:h,HOP_METADATA_KEY:d,HOP_METADATA_VALUE:p,RELAY_RENDEZVOUS_NS:y}=r(33053);e.exports=class{constructor({libp2p:e,maxListeners:t=1,onError:r}){this._libp2p=e,this._peerId=e.peerId,this._peerStore=e.peerStore,this._connectionManager=e.connectionManager,this._transportManager=e.transportManager,this._addressSorter=e.dialer.addressSorter,this.maxListeners=t,this._listenRelays=new Set,this._onProtocolChange=this._onProtocolChange.bind(this),this._onPeerDisconnected=this._onPeerDisconnected.bind(this),this._peerStore.on("change:protocols",this._onProtocolChange),this._connectionManager.on("peer:disconnect",this._onPeerDisconnected),this._onError=(e,t)=>{i.error(t||e),r&&r(e,t)}}async _onProtocolChange({peerId:e,protocols:t}){const r=e.toB58String(),n=t.find((e=>e===u));if(n||!this._listenRelays.has(r)){if(n&&!this._listenRelays.has(r))try{const t=this._connectionManager.get(e);if(!t)return;if(t.remoteAddr.protoCodes().includes(h))return void i(`relayed connection to ${r} will not be used to hop on`);await f({connection:t})&&(this._peerStore.metadataBook.set(e,d,o(p)),await this._addListenRelay(t,r))}catch(e){this._onError(e)}}else this._removeListenRelay(r)}_onPeerDisconnected(e){const t=e.remotePeer.toB58String();this._listenRelays.has(t)&&this._removeListenRelay(t)}async _addListenRelay(e,t){if(this._listenRelays.size>=this.maxListeners)return;const r=this._peerStore.addressBook.getMultiaddrsForPeer(e.remotePeer,this._addressSorter);if(!r||!r.length)return;const n=`${r[0].toString()}/p2p-circuit`;this._listenRelays.add(t);try{await this._transportManager.listen([new a(n)])}catch(e){this._onError(e),this._listenRelays.delete(t)}}_removeListenRelay(e){this._listenRelays.delete(e)&&this._listenOnAvailableHopRelays([e])}async _listenOnAvailableHopRelays(e=[]){if(this._listenRelays.size>=this.maxListeners)return;const t=[];for(const[r,n]of this._peerStore.metadataBook.data.entries()){if(this._listenRelays.has(r)||e.includes(r))continue;const i=n.get(d);if(!i||s(i)!==p)continue;const o=c.createFromB58String(r),a=this._connectionManager.get(o);if(a){if(await this._addListenRelay(a,r),this._listenRelays.size>=this.maxListeners)return}else t.push(o)}for(const e of t)if(await this._tryToListenOnRelay(e),this._listenRelays.size>=this.maxListeners)return;try{const e=await l(y);for await(const t of this._libp2p.contentRouting.findProviders(e)){if(!t.multiaddrs.length)continue;const e=t.id;if(this._peerStore.addressBook.add(e,t.multiaddrs),await this._tryToListenOnRelay(e),this._listenRelays.size>=this.maxListeners)return}}catch(e){this._onError(e)}}async _tryToListenOnRelay(e){try{const t=await this._libp2p.dial(e);await this._addListenRelay(t,e.toB58String())}catch(t){this._onError(t,`could not connect and listen on known hop relay ${e.toB58String()}`)}}}},71466:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:circuit:hop"),{error:n("libp2p:circuit:hop:err")}),o=r(32114),s=r(88785),{validateAddrs:a}=r(44780),c=r(72866),{CircuitRelay:u}=r(79123),{pipe:f}=r(60618),{codes:l}=r(23416),{stop:h}=r(10655),d=r(49284);e.exports={handleHop:async function({connection:e,request:t,streamHandler:r,circuit:n}){if(!n._options.hop.enabled)return i("HOP request received but we are not acting as a relay"),r.end({type:u.Type.STATUS,code:u.Status.HOP_CANT_SPEAK_RELAY});try{a(t,r)}catch(t){return i.error("invalid hop request via peer %s",e.remotePeer.toB58String(),t)}if(!t.dstPeer)return void i("HOP request received but we do not receive a dstPeer");const o=new s(t.dstPeer.id),c=n._connectionManager.get(o);if(!c&&!n._options.hop.active)return i("HOP request received but we are not connected to the destination peer"),r.end({type:u.Type.STATUS,code:u.Status.HOP_NO_CONN_TO_DST});if(!c)return;const l={type:u.Type.STOP,dstPeer:t.dstPeer,srcPeer:t.srcPeer};let d;try{d=await h({connection:c,request:l})}catch(e){return i.error(e)}i("hop request from %s is valid",e.remotePeer.toB58String()),r.write({type:u.Type.STATUS,code:u.Status.SUCCESS});const p=r.rest();return f(p,d,p)},hop:async function({connection:e,request:t}){const{stream:r}=await e.newStream([d.relay]),n=new c({stream:r});n.write(t);const s=await n.read();if(!s)throw o(new Error("HOP request had no response"),l.ERR_HOP_REQUEST_FAILED);if(s.code===u.Status.SUCCESS)return i("hop request was successful"),n.rest();throw i("hop request failed with code %d, closing stream",s.code),n.close(),o(new Error(`HOP request failed with code ${s.code}`),l.ERR_HOP_REQUEST_FAILED)},canHop:async function({connection:e}){const{stream:t}=await e.newStream([d.relay]),r=new c({stream:t});r.write({type:u.Type.CAN_HOP});const n=await r.read();return await r.close(),!(!n||n.code!==u.Status.SUCCESS)},handleCanHop:function({connection:e,streamHandler:t,circuit:r}){const n=r._options.hop.enabled;i("can hop (%s) request from %s",n,e.remotePeer.toB58String()),t.end({type:u.Type.STATUS,code:n?u.Status.SUCCESS:u.Status.HOP_CANT_SPEAK_RELAY})}}},10655:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:circuit:stop"),{error:n("libp2p:circuit:stop:err")}),{CircuitRelay:o}=r(79123),s=r(49284),a=r(72866),{validateAddrs:c}=r(44780);e.exports.handleStop=function({connection:e,request:t,streamHandler:r}){try{c(t,r)}catch(t){return i.error("invalid stop request via peer %s",e.remotePeer.toB58String(),t)}return i("stop request is valid"),r.write({type:o.Type.STATUS,code:o.Status.SUCCESS}),r.rest()},e.exports.stop=async function({connection:e,request:t}){const{stream:r}=await e.newStream([s.relay]);i("starting stop request to %s",e.remotePeer.toB58String());const n=new a({stream:r});n.write(t);const c=await n.read();return c?c.code===o.Status.SUCCESS?(i("stop request to %s was successful",e.remotePeer.toB58String()),n.rest()):(i("stop request failed with code %d",c.code),void n.close()):n.close()}},72866:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:circuit:stream-handler"),{error:n("libp2p:circuit:stream-handler:err")}),o=r(63500),s=r(52261),{CircuitRelay:a}=r(79123);e.exports=class{constructor({stream:e,maxLength:t=4096}){this.stream=e,this.shake=s(this.stream),this.decoder=o.decode.fromReader(this.shake.reader,{maxDataLength:t})}async read(){const e=await this.decoder.next();if(e.value){const t=a.decode(e.value.slice());return i("read message type",t.type),t}i("read received no value, closing stream"),this.close()}write(e){i("write message type %s",e.type),this.shake.write(o.encode.single(a.encode(e).finish()))}rest(){return this.shake.rest(),this.shake.stream}end(e){this.write(e),this.close()}close(){i("closing the stream"),this.rest().sink([])}}},44780:(e,t,r)=>{"use strict";const{Multiaddr:n}=r(46584),{CircuitRelay:i}=r(79123);function o(e,t){e.write({type:i.Type.STATUS,code:t})}e.exports={validateAddrs:function(e,t){try{e.dstPeer&&e.dstPeer.addrs&&e.dstPeer.addrs.forEach((e=>new n(e)))}catch(r){throw o(t,e.type===i.Type.HOP?i.Status.HOP_DST_MULTIADDR_INVALID:i.Status.STOP_DST_MULTIADDR_INVALID),r}try{e.srcPeer&&e.srcPeer.addrs&&e.srcPeer.addrs.forEach((e=>new n(e)))}catch(r){throw o(t,e.type===i.Type.HOP?i.Status.HOP_SRC_MULTIADDR_INVALID:i.Status.STOP_SRC_MULTIADDR_INVALID),r}}}},33053:e=>{"use strict";e.exports={ADVERTISE_BOOT_DELAY:9e5,ADVERTISE_TTL:18e5,CIRCUIT_PROTO_CODE:290,HOP_METADATA_KEY:"hop_relay",HOP_METADATA_VALUE:"true",RELAY_RENDEZVOUS_NS:"/libp2p/relay"}},2715:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:relay"),{error:n("libp2p:relay:err")}),{setDelayedInterval:o,clearDelayedInterval:s}=r(27695),a=r(58126),{namespaceToCid:c}=r(32497),{RELAY_RENDEZVOUS_NS:u}=r(33053);e.exports=class{constructor(e){this._libp2p=e,this._options={...e._config.relay},this._autoRelay=this._options.autoRelay.enabled&&new a({libp2p:e,...this._options.autoRelay}),this._advertiseService=this._advertiseService.bind(this)}start(){this._options.hop.enabled&&this._options.advertise.enabled&&(this._timeout=o(this._advertiseService,this._options.advertise.ttl,this._options.advertise.bootDelay))}stop(){s(this._timeout)}async _advertiseService(){try{const e=await c(u);await this._libp2p.contentRouting.provide(e)}catch(e){"NO_ROUTERS_AVAILABLE"===e.code?(i.error("a content router, such as a DHT, must be provided in order to advertise the relay service",e),this.stop()):i.error(e)}}}},64538:(e,t,r)=>{"use strict";const{EventEmitter:n}=r(17187),{Multiaddr:i}=r(46584);e.exports=e=>{const t=new Map,r=Object.assign(new n,{close:()=>Promise.resolve(),listen:async function(n){const o=String(n).split("/p2p-circuit").find((e=>""!==e)),s=await e.dial(new i(o)),a=s.remoteAddr.encapsulate("/p2p-circuit");t.set(s.remotePeer.toB58String(),a),r.emit("listening")},getAddrs:function(){const e=[];for(const r of t.values())e.push(r);return e}});return e.connectionManager.on("peer:disconnect",(e=>{t.delete(e.remotePeer.toB58String())&&r.emit("close")})),r}},49284:e=>{"use strict";e.exports={relay:"/libp2p/circuit/relay/0.1.0"}},79123:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-circuit"]||(n.roots["libp2p-circuit"]={});a.CircuitRelay=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.type=e.int32();break;case 2:n.srcPeer=a.CircuitRelay.Peer.decode(e,e.uint32());break;case 3:n.dstPeer=a.CircuitRelay.Peer.decode(e,e.uint32());break;case 4:n.code=e.int32();break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.CircuitRelay)return e;var t=new a.CircuitRelay;switch(e.type){case"HOP":case 1:t.type=1;break;case"STOP":case 2:t.type=2;break;case"STATUS":case 3:t.type=3;break;case"CAN_HOP":case 4:t.type=4}if(null!=e.srcPeer){if("object"!=typeof e.srcPeer)throw TypeError(".CircuitRelay.srcPeer: object expected");t.srcPeer=a.CircuitRelay.Peer.fromObject(e.srcPeer)}if(null!=e.dstPeer){if("object"!=typeof e.dstPeer)throw TypeError(".CircuitRelay.dstPeer: object expected");t.dstPeer=a.CircuitRelay.Peer.fromObject(e.dstPeer)}switch(e.code){case"SUCCESS":case 100:t.code=100;break;case"HOP_SRC_ADDR_TOO_LONG":case 220:t.code=220;break;case"HOP_DST_ADDR_TOO_LONG":case 221:t.code=221;break;case"HOP_SRC_MULTIADDR_INVALID":case 250:t.code=250;break;case"HOP_DST_MULTIADDR_INVALID":case 251:t.code=251;break;case"HOP_NO_CONN_TO_DST":case 260:t.code=260;break;case"HOP_CANT_DIAL_DST":case 261:t.code=261;break;case"HOP_CANT_OPEN_DST_STREAM":case 262:t.code=262;break;case"HOP_CANT_SPEAK_RELAY":case 270:t.code=270;break;case"HOP_CANT_RELAY_TO_SELF":case 280:t.code=280;break;case"STOP_SRC_ADDR_TOO_LONG":case 320:t.code=320;break;case"STOP_DST_ADDR_TOO_LONG":case 321:t.code=321;break;case"STOP_SRC_MULTIADDR_INVALID":case 350:t.code=350;break;case"STOP_DST_MULTIADDR_INVALID":case 351:t.code=351;break;case"STOP_RELAY_REFUSED":case 390:t.code=390;break;case"MALFORMED_MESSAGE":case 400:t.code=400}return t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(r.type=t.enums===String?"HOP":1,r.srcPeer=null,r.dstPeer=null,r.code=t.enums===String?"SUCCESS":100),null!=e.type&&e.hasOwnProperty("type")&&(r.type=t.enums===String?a.CircuitRelay.Type[e.type]:e.type),null!=e.srcPeer&&e.hasOwnProperty("srcPeer")&&(r.srcPeer=a.CircuitRelay.Peer.toObject(e.srcPeer,t)),null!=e.dstPeer&&e.hasOwnProperty("dstPeer")&&(r.dstPeer=a.CircuitRelay.Peer.toObject(e.dstPeer,t)),null!=e.code&&e.hasOwnProperty("code")&&(r.code=t.enums===String?a.CircuitRelay.Status[e.code]:e.code),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e.Status=(t={},(r=Object.create(t))[t[100]="SUCCESS"]=100,r[t[220]="HOP_SRC_ADDR_TOO_LONG"]=220,r[t[221]="HOP_DST_ADDR_TOO_LONG"]=221,r[t[250]="HOP_SRC_MULTIADDR_INVALID"]=250,r[t[251]="HOP_DST_MULTIADDR_INVALID"]=251,r[t[260]="HOP_NO_CONN_TO_DST"]=260,r[t[261]="HOP_CANT_DIAL_DST"]=261,r[t[262]="HOP_CANT_OPEN_DST_STREAM"]=262,r[t[270]="HOP_CANT_SPEAK_RELAY"]=270,r[t[280]="HOP_CANT_RELAY_TO_SELF"]=280,r[t[320]="STOP_SRC_ADDR_TOO_LONG"]=320,r[t[321]="STOP_DST_ADDR_TOO_LONG"]=321,r[t[350]="STOP_SRC_MULTIADDR_INVALID"]=350,r[t[351]="STOP_DST_MULTIADDR_INVALID"]=351,r[t[390]="STOP_RELAY_REFUSED"]=390,r[t[400]="MALFORMED_MESSAGE"]=400,r),e.Type=function(){var e={},t=Object.create(e);return t[e[1]="HOP"]=1,t[e[2]="STOP"]=2,t[e[3]="STATUS"]=3,t[e[4]="CAN_HOP"]=4,t}(),e.Peer=function(){function e(e){if(this.addrs=[],e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.id=e.bytes();break;case 2:n.addrs&&n.addrs.length||(n.addrs=[]),n.addrs.push(e.bytes());break;default:e.skipType(7&o)}}if(!n.hasOwnProperty("id"))throw s.ProtocolError("missing required 'id'",{instance:n});return n},e.fromObject=function(e){if(e instanceof a.CircuitRelay.Peer)return e;var t=new a.CircuitRelay.Peer;if(null!=e.id&&("string"==typeof e.id?s.base64.decode(e.id,t.id=s.newBuffer(s.base64.length(e.id)),0):e.id.length&&(t.id=e.id)),e.addrs){if(!Array.isArray(e.addrs))throw TypeError(".CircuitRelay.Peer.addrs: array expected");t.addrs=[];for(var r=0;r{"use strict";const n=r(11227),i=Object.assign(n("libp2p:circuit"),{error:n("libp2p:circuit:err")}),o=r(32114),s=r(29175),{Multiaddr:a}=r(46584),c=r(88785),{CircuitRelay:u}=r(79123),{codes:f}=r(23416),l=r(15091),{relay:h}=r(49284),d=r(64538),{handleCanHop:p,handleHop:y,hop:g}=r(71466),{handleStop:b}=r(10655),m=r(72866),v=Symbol.for("@libp2p/js-libp2p-circuit/circuit");class w{constructor({libp2p:e,upgrader:t}){this._dialer=e.dialer,this._registrar=e.registrar,this._connectionManager=e.connectionManager,this._upgrader=t,this._options=e._config.relay,this._libp2p=e,this.peerId=e.peerId,this._registrar.handle(h,this._onProtocol.bind(this))}async _onProtocol({connection:e,stream:t}){const r=new m({stream:t}),n=await r.read();if(!n)return;const o=this;let s;switch(n.type){case u.Type.CAN_HOP:i("received CAN_HOP request from %s",e.remotePeer.toB58String()),await p({circuit:o,connection:e,streamHandler:r});break;case u.Type.HOP:i("received HOP request from %s",e.remotePeer.toB58String()),s=await y({connection:e,request:n,streamHandler:r,circuit:o});break;case u.Type.STOP:i("received STOP request from %s",e.remotePeer.toB58String()),s=await b({connection:e,request:n,streamHandler:r});break;default:i("Request of type %s not supported",n.type)}if(s){const e=new a(n.dstPeer.addrs[0]),t=new a(n.srcPeer.addrs[0]),r=l({stream:s,remoteAddr:e,localAddr:t}),o=n.type===u.Type.HOP?"relay":"inbound";i("new %s connection %s",o,r.remoteAddr);const c=await this._upgrader.upgradeInbound(r);i("%s connection %s upgraded",o,r.remoteAddr),this.handler&&this.handler(c)}}async dial(e,t){const r=e.toString().split("/p2p-circuit"),n=new a(r[0]),s=new a(r[r.length-1]),h=n.getPeerId(),d=s.getPeerId();if(!h||!d){const e="Circuit relay dial failed as addresses did not have peer id";throw i.error(e),o(new Error(e),f.ERR_RELAYED_DIAL)}const p=c.createFromB58String(h),y=c.createFromB58String(d);let b=!1,m=this._connectionManager.get(p);m||(m=await this._dialer.connectToPeer(n,t),b=!0);try{const t=await g({connection:m,request:{type:u.Type.HOP,srcPeer:{id:this.peerId.toBytes(),addrs:this._libp2p.multiaddrs.map((e=>e.bytes))},dstPeer:{id:y.toBytes(),addrs:[new a(s).bytes]}}}),r=n.encapsulate(`/p2p-circuit/p2p/${this.peerId.toB58String()}`),o=l({stream:t,remoteAddr:e,localAddr:r});return i("new outbound connection %s",o.remoteAddr),this._upgrader.upgradeOutbound(o)}catch(e){throw i.error("Circuit relay dial failed",e),b&&await m.close(),e}}createListener(e,t){return"function"==typeof e&&(t=e,e={}),this.handler=t,d(this._libp2p)}filter(e){return(e=Array.isArray(e)?e:[e]).filter((e=>s.Circuit.matches(e)))}get[Symbol.toStringTag](){return"Circuit"}static isTransport(e){return Boolean(e&&e[v])}}e.exports=w},32497:(e,t,r)=>{"use strict";const{CID:n}=r(81362),{sha256:i}=r(56155);e.exports.namespaceToCid=async e=>{const t=(new TextEncoder).encode(e),r=await i.digest(t);return n.createV0(r)}},36195:(e,t,r)=>{"use strict";const n=r(70942),{dnsaddrResolver:i}=r(39004),o=r(3524),{AGENT_VERSION:s}=r(78508),a=r(33053),{publicAddressesFirst:c}=r(53737),{FaultTolerance:u}=r(6984),f={addresses:{listen:[],announce:[],noAnnounce:[],announceFilter:e=>e},connectionManager:{minConnections:25},transportManager:{faultTolerance:u.FATAL_ALL},dialer:{maxParallelDials:o.MAX_PARALLEL_DIALS,maxDialsPerPeer:o.MAX_PER_PEER_DIALS,dialTimeout:o.DIAL_TIMEOUT,resolvers:{dnsaddr:i},addressSorter:c},host:{agentVersion:s},metrics:{enabled:!1},peerStore:{persistence:!1,threshold:5},peerRouting:{refreshManager:{enabled:!0,interval:6e5,bootDelay:1e4}},config:{protocolPrefix:"ipfs",dht:{enabled:!1,kBucketSize:20,randomWalk:{enabled:!1,queriesPerPeriod:1,interval:3e5,timeout:1e4}},nat:{enabled:!0,ttl:7200,keepAlive:!0,gateway:null,externalIp:null,pmp:{enabled:!1}},peerDiscovery:{autoDial:!0},pubsub:{enabled:!0},relay:{enabled:!0,advertise:{bootDelay:a.ADVERTISE_BOOT_DELAY,enabled:!1,ttl:a.ADVERTISE_TTL},hop:{enabled:!1,active:!1},autoRelay:{enabled:!1,maxListeners:2}},transport:{}}};e.exports.validate=e=>{const t=n(f,e);if(t.modules.transport.length<1)throw new Error("'options.modules.transport' must contain at least 1 transport");return t}},7376:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:connection-manager"),{error:n("libp2p:connection-manager:err")}),o=r(32114),s=r(70942),a=r(84593),c=r(82916),{EventEmitter:u}=r(17187),f=r(88785),{codes:{ERR_INVALID_PARAMETERS:l}}=r(23416),h={maxConnections:1/0,minConnections:0,maxData:1/0,maxSentData:1/0,maxReceivedData:1/0,maxEventLoopDelay:1/0,pollInterval:2e3,autoDialInterval:1e4,movingAverageInterval:6e4,defaultPeerValue:1};e.exports=class extends u{constructor(e,t={}){if(super(),this._libp2p=e,this._peerId=e.peerId.toB58String(),this._options=s.call({ignoreUndefined:!0},h,t),this._options.maxConnectionse+t.length),0)}start(){this._libp2p.metrics&&(this._timer=this._timer||c(this._checkMetrics,this._options.pollInterval)),this._latencyMonitor.start(),this._onLatencyMeasure=this._onLatencyMeasure.bind(this),this._latencyMonitor.on("data",this._onLatencyMeasure),this._started=!0,i("started"),this._options.autoDial&&this._autoDial()}async stop(){this._autoDialTimeout&&this._autoDialTimeout.clear(),this._timer&&this._timer.clear(),this._latencyMonitor.removeListener("data",this._onLatencyMeasure),this._latencyMonitor.stop(),this._started=!1,await this._close(),i("stopped")}async _close(){const e=[];for(const t of this.connections.values())for(const r of t)e.push(r.close());await Promise.all(e),this.connections.clear()}setPeerValue(e,t){if(t<0||t>1)throw new Error("value should be a number between 0 and 1");this._peerValues.set(e.toB58String(),t)}_checkMetrics(){if(this._libp2p.metrics){const e=this._libp2p.metrics.global.movingAverages,t=e.dataReceived[this._options.movingAverageInterval].movingAverage();this._checkMaxLimit("maxReceivedData",t);const r=e.dataSent[this._options.movingAverageInterval].movingAverage();this._checkMaxLimit("maxSentData",r);const n=t+r;this._checkMaxLimit("maxData",n),i("metrics update",n),this._timer=c(this._checkMetrics,this._options.pollInterval)}}onConnect(e){const t=e.remotePeer,r=t.toB58String(),n=this.connections.get(r);this.emit("peer:connect",e),n?n.push(e):this.connections.set(r,[e]),this._libp2p.peerStore.keyBook.set(t,t.pubKey),this._peerValues.has(r)||this._peerValues.set(r,this._options.defaultPeerValue),this._checkMaxLimit("maxConnections",this.size)}onDisconnect(e){const t=e.remotePeer.toB58String();let r=this.connections.get(t);r&&r.length>1?(r=r.filter((t=>t.id!==e.id)),this.connections.set(t,r)):r&&(this.connections.delete(t),this._peerValues.delete(e.remotePeer.toB58String()),this.emit("peer:disconnect",e))}get(e){const t=this.getAll(e);return t.length?t[0]:null}getAll(e){if(!f.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),l);const t=e.toB58String(),r=this.connections.get(t);return r?r.filter((e=>"open"===e.stat.status)):[]}_onLatencyMeasure(e){this._checkMaxLimit("maxEventLoopDelay",e.avgMs)}_checkMaxLimit(e,t){const r=this._options[e];i("checking limit of %s. current value: %d of %d",e,t,r),t>r&&(i("%s: limit exceeded: %s, %d",this._peerId,e,t),this._maybeDisconnectOne())}async _autoDial(){const e=this._options.minConnections;if(this.size>=e)return void(this._autoDialTimeout=c(this._autoDial,this._options.autoDialInterval));const t=Array.from(this._libp2p.peerStore.peers.values()).sort(((e,t)=>!t.protocols||!t.protocols.length||e.protocols&&e.protocols.length?t.id.pubKey&&!e.id.pubKey?1:-1:1));for(let r=0;re[1]-t[1]))));i("%s: sorted peer values: %j",this._peerId,e);const t=e[0];if(t){const e=t[0];i("%s: lowest value peer is %s",this._peerId,e),i("%s: closing a connection to %j",this._peerId,e);for(const t of this.connections.values())if(t[0].remotePeer.toB58String()===e){t[0].close();break}}}}}},84593:(e,t,r)=>{"use strict";const{EventEmitter:n}=r(17187),i=r(7527),o=r(11227)("latency-monitor:LatencyMonitor");e.exports=class extends n{constructor({latencyCheckIntervalMs:e,dataEmitIntervalMs:t,asyncTestFn:r,latencyRandomPercentage:n}={}){super();const i=this;i.latencyCheckIntervalMs=e||500,i.latencyRandomPercentage=n||10,i._latecyCheckMultiply=i.latencyRandomPercentage/100*2*i.latencyCheckIntervalMs,i._latecyCheckSubtract=i._latecyCheckMultiply/2,i.dataEmitIntervalMs=null===t||0===t?void 0:t||5e3,o("latencyCheckIntervalMs: %s dataEmitIntervalMs: %s",i.latencyCheckIntervalMs,i.dataEmitIntervalMs),i.dataEmitIntervalMs?o("Expecting ~%s events per summary",i.latencyCheckIntervalMs/i.dataEmitIntervalMs):o("Not emitting summaries"),i.asyncTestFn=r}start(){globalThis.process&&globalThis.process.hrtime?(o("Using process.hrtime for timing"),this.now=globalThis.process.hrtime,this.getDeltaMS=e=>{const t=this.now(e);return 1e3*t[0]+t[1]/1e6}):"undefined"!=typeof window&&window.performance&&window.performance.now?(o("Using performance.now for timing"),this.now=window.performance.now.bind(window.performance),this.getDeltaMS=e=>Math.round(this.now()-e)):(o("Using Date.now for timing"),this.now=Date.now,this.getDeltaMS=e=>this.now()-e),this._latencyData=this._initLatencyData(),"undefined"!=typeof window&&(this._visibilityChangeEmitter=new i,this._visibilityChangeEmitter.on("visibilityChange",(e=>{e?this._startTimers():(this._emitSummary(),this._stopTimers())}))),this._visibilityChangeEmitter&&!this._visibilityChangeEmitter.isVisible()||this._startTimers()}stop(){this._stopTimers()}_startTimers(){this._checkLatencyID||(this._checkLatency(),this.dataEmitIntervalMs&&(this._emitIntervalID=setInterval((()=>this._emitSummary()),this.dataEmitIntervalMs),"function"==typeof this._emitIntervalID.unref&&this._emitIntervalID.unref()))}_stopTimers(){this._checkLatencyID&&(clearTimeout(this._checkLatencyID),this._checkLatencyID=void 0),this._emitIntervalID&&(clearInterval(this._emitIntervalID),this._emitIntervalID=void 0)}_emitSummary(){const e=this.getSummary();e.events>0&&this.emit("data",e)}getSummary(){const e={events:this._latencyData.events,minMs:this._latencyData.minMs,maxMs:this._latencyData.maxMs,avgMs:this._latencyData.events?this._latencyData.totalMs/this._latencyData.events:Number.POSITIVE_INFINITY,lengthMs:this.getDeltaMS(this._latencyData.startTime)};return this._latencyData=this._initLatencyData(),o("Summary: %O",e),e}_checkLatency(){const e=this,t=Math.random()*e._latecyCheckMultiply-e._latecyCheckSubtract,r={deltaOffset:Math.ceil(e.latencyCheckIntervalMs+t),startTime:e.now()},n=()=>{if(!this._checkLatencyID)return;const t=e.getDeltaMS(r.startTime)-r.deltaOffset;e._checkLatency(),e._latencyData.events++,e._latencyData.minMs=Math.min(e._latencyData.minMs,t),e._latencyData.maxMs=Math.max(e._latencyData.maxMs,t),e._latencyData.totalMs+=t,o("MS: %s Data: %O",t,e._latencyData)};o("localData: %O",r),this._checkLatencyID=setTimeout((()=>{e.asyncTestFn?(r.deltaOffset=0,r.startTime=e.now(),e.asyncTestFn(n)):(r.deltaOffset-=1,n())}),r.deltaOffset),"function"==typeof this._checkLatencyID.unref&&this._checkLatencyID.unref()}_initLatencyData(){return{startTime:this.now(),minMs:Number.POSITIVE_INFINITY,maxMs:Number.NEGATIVE_INFINITY,events:0,totalMs:0}}}},7527:(e,t,r)=>{"use strict";const{EventEmitter:n}=r(17187),i=r(11227)("latency-monitor:VisibilityChangeEmitter");e.exports=class extends n{constructor(){super(),"undefined"!=typeof document?(this._initializeVisibilityVarNames(),this._addVisibilityChangeListener()):i('This is not a browser, no "document" found. Stopping.')}_initializeVisibilityVarNames(){let e,t;void 0!==document.hidden?(e="hidden",t="visibilitychange"):void 0!==document.mozHidden?(e="mozHidden",t="mozvisibilitychange"):void 0!==document.msHidden?(e="msHidden",t="msvisibilitychange"):void 0!==document.webkitHidden&&(e="webkitHidden",t="webkitvisibilitychange"),this._hidden=e,this._visibilityChange=t}_addVisibilityChangeListener(){void 0===document.addEventListener||void 0===document[this._hidden]?i("Checking page visibility requires a browser that supports the Page Visibility API."):document.addEventListener(this._visibilityChange,this._handleVisibilityChange.bind(this),!1)}isVisible(){if(void 0!==this._hidden&&void 0!==document[this._hidden])return!document[this._hidden]}_handleVisibilityChange(){const e=!document[this._hidden];i(e?"Page Visible":"Page Hidden"),this.emit("visibilityChange",e)}}},3524:e=>{"use strict";e.exports={DIAL_TIMEOUT:3e4,MAX_PARALLEL_DIALS:100,MAX_PER_PEER_DIALS:4,MAX_ADDRS_TO_DIAL:25,METRICS:{computeThrottleMaxQueueSize:1e3,computeThrottleTimeout:2e3,movingAverageIntervals:[6e4,3e5,9e5],maxOldPeersRetention:50}}},57197:(e,t,r)=>{"use strict";const n=r(32114),{messages:i,codes:o}=r(23416),{storeAddresses:s,uniquePeers:a,requirePeers:c,maybeLimitSource:u}=r(63952),f=r(74014),{pipe:l}=r(60618);e.exports=class{constructor(e){this.libp2p=e,this.routers=e._modules.contentRouting||[],this.dht=e._dht,this.dht&&e._config.dht.enabled&&this.routers.push(this.dht)}async*findProviders(e,t={}){if(!this.routers.length)throw n(new Error("No content this.routers available"),"NO_ROUTERS_AVAILABLE");yield*l(f(...this.routers.map((r=>r.findProviders(e,t)))),(e=>s(e,this.libp2p.peerStore)),(e=>a(e)),(e=>u(e,t.maxNumProviders)),(e=>c(e)))}async provide(e){if(!this.routers.length)throw n(new Error("No content routers available"),"NO_ROUTERS_AVAILABLE");await Promise.all(this.routers.map((t=>t.provide(e))))}put(e,t,r){if(!this.libp2p.isStarted()||!this.dht.isStarted)throw n(new Error(i.NOT_STARTED_YET),o.DHT_NOT_STARTED);return this.dht.put(e,t,r)}get(e,t){if(!this.libp2p.isStarted()||!this.dht.isStarted)throw n(new Error(i.NOT_STARTED_YET),o.DHT_NOT_STARTED);return this.dht.get(e,t)}async getMany(e,t,r){if(!this.libp2p.isStarted()||!this.dht.isStarted)throw n(new Error(i.NOT_STARTED_YET),o.DHT_NOT_STARTED);return this.dht.getMany(e,t,r)}}},63952:(e,t,r)=>{"use strict";const n=r(32114),i=r(55565),o=r(32121),s=r(37939);e.exports={storeAddresses:function(e,t){return o(e,(e=>(t.addressBook.add(e.id,e.multiaddrs),e)))},uniquePeers:function(e){const t=new Set;return i(e,(e=>!t.has(e.id.toString())&&(t.add(e.id.toString()),!0)))},requirePeers:async function*(e,t=1){let r=0;for await(const t of e)r++,yield t;if(r{"use strict";const n=r(32114),i=r(28599).default,{anySignal:o}=r(32044),s=r(35103),a=r(61750);e.exports=class{constructor({addrs:e,dialAction:t,dialer:r}){this.addrs=e,this.dialer=r,this.dialAction=t}async run(e={}){const t=this.dialer.getTokens(this.addrs.length);if(t.length<1)throw n(new Error("No dial tokens available"),"ERR_NO_DIAL_TOKENS");const r=new s;t.forEach((e=>r.push(e)));const c=this.addrs.map((()=>new i));let u=0;try{return await a(this.addrs.map((async(n,i)=>{const s=await r.shift();let a;try{const f=c[i].signal;a=await this.dialAction(n,{...e,signal:e.signal?o([f,e.signal]):f}),c.splice(i,1)}finally{u++,this.addrs.length-u>=t.length?r.push(s):this.dialer.releaseToken(t.splice(t.indexOf(s),1)[0])}return a})))}finally{c.map((e=>e.abort())),t.forEach((e=>this.dialer.releaseToken(e)))}}}},63849:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:dialer"),{error:n("libp2p:dialer:err")}),o=r(32114),{Multiaddr:s}=r(46584),a=r(10715),{AbortError:c}=r(61623),{anySignal:u}=r(32044),f=r(65639),{publicAddressesFirst:l}=r(53737),h=r(43079),{codes:d}=r(23416),{DIAL_TIMEOUT:p,MAX_PARALLEL_DIALS:y,MAX_PER_PEER_DIALS:g,MAX_ADDRS_TO_DIAL:b}=r(3524);e.exports=class{constructor({transportManager:e,peerStore:t,addressSorter:r=l,maxParallelDials:n=y,maxAddrsToDial:i=b,dialTimeout:o=p,maxDialsPerPeer:a=g,resolvers:c={}}){this.transportManager=e,this.peerStore=t,this.addressSorter=r,this.maxParallelDials=n,this.maxAddrsToDial=i,this.timeout=o,this.maxDialsPerPeer=a,this.tokens=[...new Array(n)].map(((e,t)=>t)),this._pendingDials=new Map,this._pendingDialTargets=new Map;for(const[e,t]of Object.entries(c))s.resolvers.set(e,t)}destroy(){for(const e of this._pendingDials.values())try{e.controller.abort()}catch(e){i.error(e)}this._pendingDials.clear();for(const e of this._pendingDialTargets.values())e.reject(new c("Dialer was destroyed"));this._pendingDialTargets.clear()}async connectToPeer(e,t={}){const r=await this._createCancellableDialTarget(e);if(!r.addrs.length)throw o(new Error("The dial request has no valid addresses"),d.ERR_NO_VALID_ADDRESSES);const n=this._pendingDials.get(r.id)||this._createPendingDial(r,t);try{const e=await n.promise;return i("dial succeeded to %s",r.id),e}catch(e){throw n.controller.signal.aborted&&(e.code=d.ERR_TIMEOUT),i.error(e),e}finally{n.destroy()}}async _createCancellableDialTarget(e){const t=`${parseInt(String(1e9*Math.random()),10).toString()+Date.now()}`,r=new Promise(((e,r)=>{this._pendingDialTargets.set(t,{resolve:e,reject:r})})),n=await Promise.race([this._createDialTarget(e),r]);return this._pendingDialTargets.delete(t),n}async _createDialTarget(e){const{id:t,multiaddrs:r}=h(e);r&&this.peerStore.addressBook.add(t,r);let n=this.peerStore.addressBook.getMultiaddrsForPeer(t,this.addressSorter)||[];s.isMultiaddr(e)&&(n=n.filter((t=>!e.equals(t))),n.unshift(e));const i=[];for(const e of n)(await this._resolve(e)).forEach((e=>i.push(e)));const a=i.filter((e=>this.transportManager.transportForMultiaddr(e)));if(a.length>this.maxAddrsToDial)throw this.peerStore.delete(t),o(new Error("dial with more addresses than allowed"),d.ERR_TOO_MANY_ADDRESSES);return{id:t.toB58String(),addrs:a}}_createPendingDial(e,t={}){const r=new f({addrs:e.addrs,dialAction:(e,t)=>{if(t.signal.aborted)throw o(new Error("already aborted"),d.ERR_ALREADY_ABORTED);return this.transportManager.dial(e,t)},dialer:this}),n=new a(this.timeout),i=[n.signal];t.signal&&i.push(t.signal);const s=u(i),c={dialRequest:r,controller:n,promise:r.run({...t,signal:s}),destroy:()=>{n.clear(),this._pendingDials.delete(e.id)}};return this._pendingDials.set(e.id,c),c}getTokens(e){const t=Math.min(e,this.maxDialsPerPeer,this.tokens.length),r=this.tokens.splice(0,t);return i("%d tokens request, returning %d, %d remaining",e,t,this.tokens.length),r}releaseToken(e){this.tokens.indexOf(e)>-1||(i("token %d released",e),this.tokens.push(e))}async _resolve(e){if(!e.protoNames().includes("dnsaddr"))return[e];const t=await this._resolveRecord(e);return(await Promise.all(t.map((e=>this._resolve(e))))).flat().reduce(((e,t)=>(e.find((e=>e.equals(t)))||e.push(t),e)),[])}async _resolveRecord(e){try{return e=new s(e.toString()),await e.resolve()}catch(t){return i.error(`multiaddr ${e} could not be resolved`),[]}}}},23416:(e,t)=>{"use strict";t.messages={NOT_STARTED_YET:"The libp2p node is not started yet",DHT_DISABLED:"DHT is not available",CONN_ENCRYPTION_REQUIRED:"At least one connection encryption module is required"},t.codes={DHT_DISABLED:"ERR_DHT_DISABLED",PUBSUB_NOT_STARTED:"ERR_PUBSUB_NOT_STARTED",DHT_NOT_STARTED:"ERR_DHT_NOT_STARTED",CONN_ENCRYPTION_REQUIRED:"ERR_CONN_ENCRYPTION_REQUIRED",ERR_INVALID_PROTOCOLS_FOR_STREAM:"ERR_INVALID_PROTOCOLS_FOR_STREAM",ERR_CONNECTION_ENDED:"ERR_CONNECTION_ENDED",ERR_CONNECTION_FAILED:"ERR_CONNECTION_FAILED",ERR_NODE_NOT_STARTED:"ERR_NODE_NOT_STARTED",ERR_ALREADY_ABORTED:"ERR_ALREADY_ABORTED",ERR_TOO_MANY_ADDRESSES:"ERR_TOO_MANY_ADDRESSES",ERR_NO_VALID_ADDRESSES:"ERR_NO_VALID_ADDRESSES",ERR_RELAYED_DIAL:"ERR_RELAYED_DIAL",ERR_DIALED_SELF:"ERR_DIALED_SELF",ERR_DISCOVERED_SELF:"ERR_DISCOVERED_SELF",ERR_DUPLICATE_TRANSPORT:"ERR_DUPLICATE_TRANSPORT",ERR_ENCRYPTION_FAILED:"ERR_ENCRYPTION_FAILED",ERR_HOP_REQUEST_FAILED:"ERR_HOP_REQUEST_FAILED",ERR_INVALID_KEY:"ERR_INVALID_KEY",ERR_INVALID_MESSAGE:"ERR_INVALID_MESSAGE",ERR_INVALID_PARAMETERS:"ERR_INVALID_PARAMETERS",ERR_INVALID_PEER:"ERR_INVALID_PEER",ERR_MUXER_UNAVAILABLE:"ERR_MUXER_UNAVAILABLE",ERR_TIMEOUT:"ERR_TIMEOUT",ERR_TRANSPORT_UNAVAILABLE:"ERR_TRANSPORT_UNAVAILABLE",ERR_TRANSPORT_DIAL_FAILED:"ERR_TRANSPORT_DIAL_FAILED",ERR_UNSUPPORTED_PROTOCOL:"ERR_UNSUPPORTED_PROTOCOL",ERR_INVALID_MULTIADDR:"ERR_INVALID_MULTIADDR",ERR_SIGNATURE_NOT_VALID:"ERR_SIGNATURE_NOT_VALID"}},43079:(e,t,r)=>{"use strict";const n=r(88785),{Multiaddr:i}=r(46584),o=r(32114),{codes:s}=r(23416);e.exports=function(e){let t;if("string"==typeof e&&(e=new i(e)),i.isMultiaddr(e)){t=e;const r=e.getPeerId();if(!r)throw o(new Error(`${e} does not have a valid peer type`),s.ERR_INVALID_MULTIADDR);try{e=n.createFromB58String(r)}catch(t){throw o(new Error(`${e} is not a valid peer type`),s.ERR_INVALID_MULTIADDR)}}return{id:e,multiaddrs:t?[t]:void 0}}},78508:(e,t,r)=>{"use strict";const n=r(28362).version;e.exports.PROTOCOL_VERSION="ipfs/0.1.0",e.exports.AGENT_VERSION=`js-libp2p/${n}`,e.exports.MULTICODEC_IDENTIFY="/ipfs/id/1.0.0",e.exports.MULTICODEC_IDENTIFY_PUSH="/ipfs/id/push/1.0.0",e.exports.IDENTIFY_PROTOCOL_VERSION="0.1.0",e.exports.MULTICODEC_IDENTIFY_PROTOCOL_NAME="id",e.exports.MULTICODEC_IDENTIFY_PUSH_PROTOCOL_NAME="id/push",e.exports.MULTICODEC_IDENTIFY_PROTOCOL_VERSION="1.0.0",e.exports.MULTICODEC_IDENTIFY_PUSH_PROTOCOL_VERSION="1.0.0"},26078:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:identify"),{error:n("libp2p:identify:err")}),o=r(32114),s=r(63500),{pipe:a}=r(60618),{collect:c,take:u,consume:f}=r(38386),{fromString:l}=r(52217),h=r(88785),{Multiaddr:d}=r(46584),{toBuffer:p}=r(96653),y=r(29966),g=r(31244),b=r(61131),{MULTICODEC_IDENTIFY:m,MULTICODEC_IDENTIFY_PUSH:v,IDENTIFY_PROTOCOL_VERSION:w,MULTICODEC_IDENTIFY_PROTOCOL_NAME:E,MULTICODEC_IDENTIFY_PUSH_PROTOCOL_NAME:_,MULTICODEC_IDENTIFY_PROTOCOL_VERSION:S,MULTICODEC_IDENTIFY_PUSH_PROTOCOL_VERSION:A}=r(78508),{codes:T}=r(23416);class I{static getProtocolStr(e){return{identifyProtocolStr:`/${e._config.protocolPrefix}/${E}/${S}`,identifyPushProtocolStr:`/${e._config.protocolPrefix}/${_}/${A}`}}constructor({libp2p:e}){this._libp2p=e,this.peerStore=e.peerStore,this.addressManager=e.addressManager,this.connectionManager=e.connectionManager,this.peerId=e.peerId,this.handleMessage=this.handleMessage.bind(this);const t=I.getProtocolStr(e);this.identifyProtocolStr=t.identifyProtocolStr,this.identifyPushProtocolStr=t.identifyPushProtocolStr,this._host={protocolVersion:`${e._config.protocolPrefix}/${w}`,...e._options.host},this.peerStore.metadataBook.set(this.peerId,"AgentVersion",l(this._host.agentVersion)),this.peerStore.metadataBook.set(this.peerId,"ProtocolVersion",l(this._host.protocolVersion)),this.connectionManager.on("peer:connect",(e=>{this.identify(e).catch(i.error)})),this.peerStore.on("change:multiaddrs",(({peerId:e})=>{e.toString()===this.peerId.toString()&&this.pushToPeerStore()})),this.peerStore.on("change:protocols",(({peerId:e})=>{e.toString()===this.peerId.toString()&&this.pushToPeerStore()}))}async push(e){const t=await this.peerStore.addressBook.getRawEnvelope(this.peerId),r=this._libp2p.multiaddrs.map((e=>e.bytes)),n=this.peerStore.protoBook.get(this.peerId)||[],o=e.map((async e=>{try{const{stream:i}=await e.newStream(this.identifyPushProtocolStr);await a([y.Identify.encode({listenAddrs:r,signedPeerRecord:t,protocols:n}).finish()],s.encode(),i,f)}catch(e){i.error("could not push identify update to peer",e)}}));return Promise.all(o)}pushToPeerStore(){if(!this._libp2p.isStarted())return;const e=[];let t;for(const r of this.peerStore.peers.values())r.protocols.includes(this.identifyPushProtocolStr)&&(t=this.connectionManager.get(r.id))&&e.push(t);this.push(e)}async identify(e){const{stream:t}=await e.newStream(this.identifyProtocolStr),[r]=await a([],t,s.decode(),u(1),p,c);if(!r)throw o(new Error("No data could be retrieved"),T.ERR_CONNECTION_ENDED);let n;try{n=y.Identify.decode(r)}catch(e){throw o(e,T.ERR_INVALID_MESSAGE)}const{publicKey:f,listenAddrs:m,protocols:v,observedAddr:w,signedPeerRecord:E}=n,_=await h.createFromPubKey(f);if(e.remotePeer.toB58String()!==_.toB58String())throw o(new Error("identified peer does not match the expected peer"),T.ERR_INVALID_PEER);const S=I.getCleanMultiaddr(w);try{const e=await g.openAndCertify(E,b.DOMAIN);if(this.peerStore.addressBook.consumePeerRecord(e))return this.peerStore.protoBook.set(_,v),this.peerStore.metadataBook.set(_,"AgentVersion",l(n.agentVersion)),void this.peerStore.metadataBook.set(_,"ProtocolVersion",l(n.protocolVersion))}catch(e){i("received invalid envelope, discard it and fallback to listenAddrs is available",e)}try{this.peerStore.addressBook.set(_,m.map((e=>new d(e))))}catch(e){i.error("received invalid addrs",e)}this.peerStore.protoBook.set(_,v),this.peerStore.metadataBook.set(_,"AgentVersion",l(n.agentVersion)),this.peerStore.metadataBook.set(_,"ProtocolVersion",l(n.protocolVersion)),i("received observed address of %s",S)}handleMessage({connection:e,stream:t,protocol:r}){switch(r){case this.identifyProtocolStr:return this._handleIdentify({connection:e,stream:t});case this.identifyPushProtocolStr:return this._handlePush({connection:e,stream:t});default:i.error("cannot handle unknown protocol %s",r)}}async _handleIdentify({connection:e,stream:t}){let r=new Uint8Array(0);this.peerId.pubKey&&(r=this.peerId.pubKey.bytes);const n=await this.peerStore.addressBook.getRawEnvelope(this.peerId),o=this.peerStore.protoBook.get(this.peerId)||[],c=y.Identify.encode({protocolVersion:this._host.protocolVersion,agentVersion:this._host.agentVersion,publicKey:r,listenAddrs:this._libp2p.multiaddrs.map((e=>e.bytes)),signedPeerRecord:n,observedAddr:e.remoteAddr.bytes,protocols:o}).finish();try{await a([c],s.encode(),t,f)}catch(e){i.error("could not respond to identify request",e)}}async _handlePush({connection:e,stream:t}){let r;try{const[e]=await a([],t,s.decode(),u(1),p,c);r=y.Identify.decode(e)}catch(e){return i.error("received invalid message",e)}const n=e.remotePeer;try{const e=await g.openAndCertify(r.signedPeerRecord,b.DOMAIN);if(this.peerStore.addressBook.consumePeerRecord(e))return void this.peerStore.protoBook.set(n,r.protocols)}catch(e){i("received invalid envelope, discard it and fallback to listenAddrs is available",e)}try{this.peerStore.addressBook.set(n,r.listenAddrs.map((e=>new d(e))))}catch(e){i.error("received invalid addrs",e)}this.peerStore.protoBook.set(n,r.protocols)}static getCleanMultiaddr(e){if(e&&e.length>0)try{return new d(e)}catch(e){return null}return null}}const C={IDENTIFY:m,IDENTIFY_PUSH:v};I.multicodecs=C,I.Messsage=y,e.exports=I},29966:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-identify"]||(n.roots["libp2p-identify"]={});a.Identify=function(){function e(e){if(this.listenAddrs=[],this.protocols=[],e)for(var t=Object.keys(e),r=0;r>>3){case 5:n.protocolVersion=e.string();break;case 6:n.agentVersion=e.string();break;case 1:n.publicKey=e.bytes();break;case 2:n.listenAddrs&&n.listenAddrs.length||(n.listenAddrs=[]),n.listenAddrs.push(e.bytes());break;case 4:n.observedAddr=e.bytes();break;case 3:n.protocols&&n.protocols.length||(n.protocols=[]),n.protocols.push(e.string());break;case 8:n.signedPeerRecord=e.bytes();break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.Identify)return e;var t=new a.Identify;if(null!=e.protocolVersion&&(t.protocolVersion=String(e.protocolVersion)),null!=e.agentVersion&&(t.agentVersion=String(e.agentVersion)),null!=e.publicKey&&("string"==typeof e.publicKey?s.base64.decode(e.publicKey,t.publicKey=s.newBuffer(s.base64.length(e.publicKey)),0):e.publicKey.length&&(t.publicKey=e.publicKey)),e.listenAddrs){if(!Array.isArray(e.listenAddrs))throw TypeError(".Identify.listenAddrs: array expected");t.listenAddrs=[];for(var r=0;r{"use strict";const n=r(11227),i=Object.assign(n("libp2p"),{error:n("libp2p:err")}),{EventEmitter:o}=r(17187),s=r(32114),a=r(88785),{Multiaddr:c}=r(46584),u=r(51203),f=r(57197),l=r(43079),{validate:h}=r(36195),{codes:d,messages:p}=r(23416),y=r(14942),g=r(7376),b=r(91491),m=r(2715),v=r(63849),w=r(40298),E=r(31175),_=r(6984),S=r(21003),A=r(4323),T=r(65993),I=r(78112),C=r(28861),P=r(75466),R=r(26078),k=r(64205),{updateSelfPeerRecord:B}=r(1001);class x extends o{static async create(e){if(e.peerId)return new x(e);const t=await a.create();return e.peerId=t,new x(e)}constructor(e){if(super(),this._options=h(e),this.peerId=this._options.peerId,this.datastore=this._options.datastore,this.peerStore=this.datastore&&this._options.peerStore.persistence?new I({peerId:this.peerId,datastore:this.datastore,...this._options.peerStore}):new A({peerId:this.peerId}),this.addresses=this._options.addresses,this.addressManager=new y(this.peerId,this._options.addresses),this.addressManager.on("change:addresses",(()=>{B(this).catch((e=>{i.error("Error updating self peer record",e)}))})),this._modules=this._options.modules,this._config=this._options.config,this._transport=[],this._discovery=new Map,this.connectionManager=new g(this,{autoDial:this._config.peerDiscovery.autoDial,...this._options.connectionManager}),this._options.metrics.enabled&&(this.metrics=new E({...this._options.metrics,connectionManager:this.connectionManager})),this._options.keychain&&this._options.keychain.datastore){i("creating keychain");const e=w.generateOptions();this.keychain=new w(this._options.keychain.datastore,{...e,...this._options.keychain}),i("keychain constructed")}if(this.upgrader=new S({localPeer:this.peerId,metrics:this.metrics,onConnection:e=>this.connectionManager.onConnect(e),onConnectionEnd:e=>this.connectionManager.onDisconnect(e)}),this.transportManager=new _({libp2p:this,upgrader:this.upgrader,faultTolerance:this._options.transportManager.faultTolerance}),this.natManager=new k({peerId:this.peerId,addressManager:this.addressManager,transportManager:this.transportManager,...this._options.config.nat}),this.registrar=new C({peerStore:this.peerStore,connectionManager:this.connectionManager}),this.handle=this.handle.bind(this),this.registrar.handle=this.handle,!this._modules.connEncryption||!this._modules.connEncryption.length)throw s(new Error(p.CONN_ENCRYPTION_REQUIRED),d.CONN_ENCRYPTION_REQUIRED);if(this._modules.connEncryption.forEach((e=>{this.upgrader.cryptos.set(e.protocol,e)})),this.dialer=new v({transportManager:this.transportManager,peerStore:this.peerStore,...this._options.dialer}),this._modules.transport.forEach((e=>{const t=e.prototype[Symbol.toStringTag],r=this._config.transport[t];this.transportManager.add(t,e,r)})),this._config.relay.enabled&&(this.transportManager.add(b.prototype[Symbol.toStringTag],b),this.relay=new m(this)),this._modules.streamMuxer&&(this._modules.streamMuxer.forEach((e=>{this.upgrader.muxers.set(e.multicodec,e)})),this.identifyService=new R({libp2p:this}),this.handle(Object.values(R.getProtocolStr(this)),this.identifyService.handleMessage)),this._modules.connProtector)this.upgrader.protector=this._modules.connProtector;else if(void 0!==globalThis.process&&globalThis.process.env&&globalThis.process.env.LIBP2P_FORCE_PNET)throw new Error("Private network is enforced, but no protector was provided");if(this._modules.dht){const e=this._modules.dht;this._dht=new e({libp2p:this,dialer:this.dialer,peerId:this.peerId,peerStore:this.peerStore,registrar:this.registrar,datastore:this.datastore,...this._config.dht})}if(this._modules.pubsub){const e=this._modules.pubsub;this.pubsub=T(e,this,this._config.pubsub)}this.peerRouting=new u(this),this.contentRouting=new f(this),P.mount(this),this._onDiscoveryPeer=this._onDiscoveryPeer.bind(this)}emit(e,...t){return"error"!==e||this._events.error?super.emit(e,...t):(i.error(t),!1)}async start(){i("libp2p is starting");try{await this._onStarting(),await this._onDidStart(),i("libp2p has started")}catch(e){throw this.emit("error",e),i.error("An error occurred starting libp2p",e),await this.stop(),e}}async stop(){i("libp2p is stopping");try{this._isStarted=!1,this.relay&&this.relay.stop(),this.peerRouting.stop();for(const e of this._discovery.values())e.removeListener("peer",this._onDiscoveryPeer);await Promise.all(Array.from(this._discovery.values(),(e=>e.stop()))),this._discovery=new Map,await this.peerStore.stop(),await this.connectionManager.stop(),await Promise.all([this.pubsub&&this.pubsub.stop(),this._dht&&this._dht.stop(),this.metrics&&this.metrics.stop()]),await this.natManager.stop(),await this.transportManager.close(),P.unmount(this),this.dialer.destroy()}catch(e){e&&(i.error(e),this.emit("error",e))}i("libp2p has stopped")}async loadKeychain(){if(this.keychain)try{await this.keychain.findKeyByName("self")}catch(e){await this.keychain.importPeer("self",this.peerId)}}isStarted(){return this._isStarted}get connections(){return this.connectionManager.connections}dial(e,t){return this._dial(e,t)}async dialProtocol(e,t,r){if(!t||!t.length)throw s(new Error("no protocols were provided to open a stream"),d.ERR_INVALID_PROTOCOLS_FOR_STREAM);return(await this._dial(e,r)).newStream(t)}async _dial(e,t){const{id:r,multiaddrs:n}=l(e);if(r.equals(this.peerId))throw s(new Error("Cannot dial self"),d.ERR_DIALED_SELF);let i=this.connectionManager.get(r);return i?n&&this.peerStore.addressBook.add(r,n):i=await this.dialer.connectToPeer(e,t),i}get multiaddrs(){let e=this.addressManager.getAnnounceAddrs().map((e=>e.toString()));e.length||(e=this.transportManager.getAddrs().map((e=>e.toString()))),e=e.concat(this.addressManager.getObservedAddrs().map((e=>e.toString())));const t=this._options.addresses.announceFilter,r=new Set(e);return t(Array.from(r).map((e=>new c(e))))}async hangUp(e){const{id:t}=l(e),r=this.connectionManager.connections.get(t.toB58String());r&&await Promise.all(r.map((e=>e.close())))}ping(e){const{id:t,multiaddrs:r}=l(e);return P(this,r?r[0]:t)}handle(e,t){(e=Array.isArray(e)?e:[e]).forEach((e=>{this.upgrader.protocols.set(e,t)})),this.peerStore.protoBook.add(this.peerId,e)}unhandle(e){(e=Array.isArray(e)?e:[e]).forEach((e=>{this.upgrader.protocols.delete(e)})),this.peerStore.protoBook.remove(this.peerId,e)}async _onStarting(){const e=this.addressManager.getListenAddrs();await this.transportManager.listen(e),this.natManager.start(),await this.peerStore.start(),this._config.pubsub.enabled&&this.pubsub&&this.pubsub.start(),this._config.dht.enabled&&(this._dht&&this._dht.start(),this._dht.on("peer",this._onDiscoveryPeer)),this.metrics&&this.metrics.start()}async _onDidStart(){this._isStarted=!0,this.peerStore.on("peer",(e=>{this.emit("peer:discovery",e),this._maybeConnect(e)}));for(const e of this.peerStore.peers.values())this.emit("peer:discovery",e.id);this.connectionManager.start(),await this._setupPeerDiscovery(),this.relay&&this.relay.start(),this.peerRouting.start()}_onDiscoveryPeer(e){e.id.toB58String()!==this.peerId.toB58String()?(e.multiaddrs&&this.peerStore.addressBook.add(e.id,e.multiaddrs),e.protocols&&this.peerStore.protoBook.set(e.id,e.protocols)):i.error(new Error(d.ERR_DISCOVERED_SELF))}async _maybeConnect(e){if(!0===this._config.peerDiscovery.autoDial&&!this.connectionManager.get(e)&&(this._options.connectionManager.minConnections||0)>this.connectionManager.size){i("connecting to discovered peer %s",e.toB58String());try{await this.dialer.connectToPeer(e)}catch(t){i.error(`could not connect to discovered peer ${e.toB58String()} with ${t}`)}}}async _setupPeerDiscovery(){const e=e=>{let t={enabled:!0};if(e.tag&&this._config.peerDiscovery&&this._config.peerDiscovery[e.tag]&&(t={...t,...this._config.peerDiscovery[e.tag]}),t.enabled&&!this._discovery.has(e.tag)){let r;r="function"==typeof e?new e(Object.assign({},t,{peerId:this.peerId,libp2p:this})):e,r.on("peer",this._onDiscoveryPeer),this._discovery.set(e.tag,r)}};for(const t of this._modules.peerDiscovery||[])e(t);for(const t of this.transportManager.getTransports())t.discovery&&e(t.discovery);await Promise.all(Array.from(this._discovery.values(),(e=>e.start())))}}e.exports=x},89138:(e,t,r)=>{"use strict";r(79437),r(97450);const n=r(3832),{certificateForKey:i,findAsync:o}=r(48913),s=r(32114),{fromString:a}=r(52217),{toString:c}=r(92263),u=new WeakMap;e.exports=class{constructor(e,t){if(!e)throw s(new Error("keychain is required"),"ERR_KEYCHAIN_REQUIRED");this.keychain=e,u.set(this,{dek:t})}async encrypt(e,t){if(!(t instanceof Uint8Array))throw s(new Error("Plain data must be a Uint8Array"),"ERR_INVALID_PARAMS");const r=await this.keychain.findKeyByName(e),o=await this.keychain._getPrivateKey(e),c=u.get(this).dek,f=n.pki.decryptRsaPrivateKey(o,c),l=await i(r,f),h=n.pkcs7.createEnvelopedData();h.addRecipient(l),h.content=n.util.createBuffer(t),h.encrypt();const d=n.asn1.toDer(h.toAsn1()).getBytes();return a(d,"ascii")}async decrypt(e){if(!(e instanceof Uint8Array))throw s(new Error("CMS data is required"),"ERR_INVALID_PARAMS");let t;try{const r=n.util.createBuffer(c(e,"ascii")),i=n.asn1.fromDer(r);t=n.pkcs7.messageFromAsn1(i)}catch(e){throw s(new Error("Invalid CMS: "+e.message),"ERR_INVALID_CMS")}const r=t.recipients.filter((e=>e.issuer.find((e=>"O"===e.shortName&&"ipfs"===e.value)))).filter((e=>e.issuer.find((e=>"CN"===e.shortName)))).map((e=>({recipient:e,keyId:e.issuer.find((e=>"CN"===e.shortName)).value}))),i=await o(r,(async e=>{try{if(await this.keychain.findKeyById(e.keyId))return!0}catch(e){return!1}return!1}));if(!i){const e=r.map((e=>e.keyId));throw s(new Error("Decryption needs one of the key(s): "+e.join(", ")),"ERR_MISSING_KEYS",{missingKeys:e})}const f=await this.keychain.findKeyById(i.keyId);if(!f)throw s(new Error("No key available to decrypto"),"ERR_NO_KEY");const l=await this.keychain._getPrivateKey(f.name),h=u.get(this).dek,d=n.pki.decryptRsaPrivateKey(l,h);return t.decrypt(i.recipient,d),a(t.content.getBytes(),"ascii")}}},40298:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:keychain"),{error:n("libp2p:keychain:err")}),o=r(50202),s=r(70942),a=r(49928),{Key:c}=r(82233),u=r(89138),f=r(32114),{toString:l}=r(92263),{fromString:h}=r(52217);r(63219);const d="/info/",p=new WeakMap,y={dek:{keyLength:64,iterationCount:1e4,salt:"you should override this value with a crypto secure random number",hash:"sha2-512"}};function g(e){return!!e&&"string"==typeof e&&e===o(e.trim())}async function b(e){const t=800*Math.random()+200;throw await new Promise((e=>setTimeout(e,t))),e}function m(e){return new c("/pkcs8/"+e)}function v(e){return new c(d+e)}e.exports=class{constructor(e,t){if(!e)throw new Error("store is required");if(this.store=e,this.opts=s(y,t),this.opts.pass&&this.opts.pass.length<20)throw new Error("pass must be least 20 characters");if(this.opts.dek.keyLength<14)throw new Error("dek.keyLength must be least 14 bytes");if(this.opts.dek.salt.length<16)throw new Error("dek.saltLength must be least 16 bytes");if(this.opts.dek.iterationCount<1e3)throw new Error("dek.iterationCount must be least 1000");const r=this.opts.pass?a.pbkdf2(this.opts.pass,this.opts.dek.salt,this.opts.dek.iterationCount,this.opts.dek.keyLength,this.opts.dek.hash):"";p.set(this,{dek:r})}get cms(){return new u(this,p.get(this).dek)}static generateOptions(){const e=Object.assign({},y),t=3*Math.ceil(16/3);return e.dek.salt=l(a.randomBytes(t),"base64"),e}static get options(){return y}async createKey(e,t,r=2048){const n=this;if(!g(e)||"self"===e)return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));if("string"!=typeof t)return b(f(new Error(`Invalid key type '${t}'`),"ERR_INVALID_KEY_TYPE"));const i=m(e);if(await n.store.has(i))return b(f(new Error(`Key '${e}' already exists`),"ERR_KEY_ALREADY_EXISTS"));if("rsa"===t.toLowerCase()&&(!Number.isSafeInteger(r)||r<2048))return b(f(new Error(`Invalid RSA key size ${r}`),"ERR_INVALID_KEY_SIZE"));let o;try{const s=await a.keys.generateKeyPair(t,r),c=await s.id(),u=p.get(this).dek,f=await s.export(u);o={name:e,id:c};const l=n.store.batch();l.put(i,h(f)),l.put(v(e),h(JSON.stringify(o))),await l.commit()}catch(e){return b(e)}return o}async listKeys(){const e=this,t={prefix:d},r=[];for await(const n of e.store.query(t))r.push(JSON.parse(l(n.value)));return r}async findKeyById(e){try{return(await this.listKeys()).find((t=>t.id===e))}catch(e){return b(e)}}async findKeyByName(e){if(!g(e))return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));const t=v(e);try{const e=await this.store.get(t);return JSON.parse(l(e))}catch(t){return b(f(new Error(`Key '${e}' does not exist. ${t.message}`),"ERR_KEY_NOT_FOUND"))}}async removeKey(e){if(!g(e)||"self"===e)return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));const t=m(e),r=await this.findKeyByName(e),n=this.store.batch();return n.delete(t),n.delete(v(e)),await n.commit(),r}async renameKey(e,t){const r=this;if(!g(e)||"self"===e)return b(f(new Error(`Invalid old key name '${e}'`),"ERR_OLD_KEY_NAME_INVALID"));if(!g(t)||"self"===t)return b(f(new Error(`Invalid new key name '${t}'`),"ERR_NEW_KEY_NAME_INVALID"));const n=m(e),i=m(t),o=v(e),s=v(t);if(await r.store.has(i))return b(f(new Error(`Key '${t}' already exists`),"ERR_KEY_ALREADY_EXISTS"));try{const e=await r.store.get(n),a=await r.store.get(o),c=JSON.parse(l(a));c.name=t;const u=r.store.batch();return u.put(i,e),u.put(s,h(JSON.stringify(c))),u.delete(n),u.delete(o),await u.commit(),c}catch(e){return b(e)}}async exportKey(e,t){if(!g(e))return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));if(!t)return b(f(new Error("Password is required"),"ERR_PASSWORD_REQUIRED"));const r=m(e);try{const e=await this.store.get(r),n=l(e),i=p.get(this).dek;return(await a.keys.import(n,i)).export(t)}catch(e){return b(e)}}async importKey(e,t,r){if(!g(e)||"self"===e)return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));if(!t)return b(f(new Error("PEM encoded key is required"),"ERR_PEM_REQUIRED"));const n=m(e);if(await this.store.has(n))return b(f(new Error(`Key '${e}' already exists`),"ERR_KEY_ALREADY_EXISTS"));let i,o;try{i=await a.keys.import(t,r)}catch(e){return b(f(new Error("Cannot read the key, most likely the password is wrong"),"ERR_CANNOT_READ_KEY"))}try{o=await i.id();const e=p.get(this).dek;t=await i.export(e)}catch(e){return b(e)}const s={name:e,id:o},c=this.store.batch();return c.put(n,h(t)),c.put(v(e),h(JSON.stringify(s))),await c.commit(),s}async importPeer(e,t){const r=this;if(!g(e))return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));if(!t||!t.privKey)return b(f(new Error("Peer.privKey is required"),"ERR_MISSING_PRIVATE_KEY"));const n=t.privKey,i=m(e);if(await r.store.has(i))return b(f(new Error(`Key '${e}' already exists`),"ERR_KEY_ALREADY_EXISTS"));try{const t=await n.id(),o=p.get(this).dek,s=await n.export(o),a={name:e,id:t},c=r.store.batch();return c.put(i,h(s)),c.put(v(e),h(JSON.stringify(a))),await c.commit(),a}catch(e){return b(e)}}async _getPrivateKey(e){if(!g(e))return b(f(new Error(`Invalid key name '${e}'`),"ERR_INVALID_KEY_NAME"));try{const t=m(e),r=await this.store.get(t);return l(r)}catch(t){return b(f(new Error(`Key '${e}' does not exist. ${t.message}`),"ERR_KEY_NOT_FOUND"))}}async rotateKeychainPass(e,t){if("string"!=typeof e)return b(f(new Error(`Invalid old pass type '${typeof e}'`),"ERR_INVALID_OLD_PASS_TYPE"));if("string"!=typeof t)return b(f(new Error(`Invalid new pass type '${typeof t}'`),"ERR_INVALID_NEW_PASS_TYPE"));if(t.length<20)return b(f(new Error(`Invalid pass length ${t.length}`),"ERR_INVALID_PASS_LENGTH"));i("recreating keychain");const r=p.get(this).dek;this.opts.pass=t;const n=t?a.pbkdf2(t,this.opts.dek.salt,this.opts.dek.iterationCount,this.opts.dek.keyLength,this.opts.dek.hash):"";p.set(this,{dek:n});const o=await this.listKeys();for(const e of o){const t=await this.store.get(m(e.name)),i=l(t),o=await a.keys.import(i,r),s=n.toString(),c=await o.export(s),u=this.store.batch(),f={name:e.name,id:e.id};u.put(m(e.name),h(c)),u.put(v(e.name),h(JSON.stringify(f))),await u.commit()}i("keychain reconstructed")}}},48913:(e,t,r)=>{"use strict";r(25414);const n=r(3832).pki;e.exports={certificateForKey:(e,t)=>{const r=n.setRsaPublicKey(t.n,t.e),i=n.createCertificate();i.publicKey=r,i.serialNumber="01",i.validity.notBefore=new Date,i.validity.notAfter=new Date,i.validity.notAfter.setFullYear(i.validity.notBefore.getFullYear()+10);const o=[{name:"organizationName",value:"ipfs"},{shortName:"OU",value:"keystore"},{name:"commonName",value:e.id}];return i.setSubject(o),i.setIssuer(o),i.setExtensions([{name:"basicConstraints",cA:!0},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!0,dataEncipherment:!0},{name:"extKeyUsage",serverAuth:!0,clientAuth:!0,codeSigning:!0,emailProtection:!0,timeStamping:!0},{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0,sslCA:!0,emailCA:!0,objCA:!0}]),i.sign(t),i},findAsync:async function(e,t){const r=e.map(t);return e[(await Promise.all(r)).findIndex((e=>e))]}}},31175:(e,t,r)=>{"use strict";const n=r(70942),{pipe:i}=r(60618),{tap:o}=r(38386),s=r(87787),{METRICS:a}=r(3524),c=r(61094),u=["dataReceived","dataSent"],f={in:"dataReceived",out:"dataSent"};class l{constructor(e){this._options=n(a,e),this._globalStats=new c(u,this._options),this._peerStats=new Map,this._protocolStats=new Map,this._oldPeers=s(this._options.maxOldPeersRetention),this._running=!1,this._onMessage=this._onMessage.bind(this),this._connectionManager=e.connectionManager,this._connectionManager.on("peer:disconnect",(e=>{this.onPeerDisconnected(e.remotePeer)}))}start(){this._running=!0}stop(){this._running=!1,this._globalStats.stop();for(const e of this._peerStats.values())e.stop();for(const e of this._protocolStats.values())e.stop()}get global(){return this._globalStats}get peers(){return Array.from(this._peerStats.keys())}forPeer(e){const t=e.toB58String();return this._peerStats.get(t)||this._oldPeers.get(t)}get protocols(){return Array.from(this._protocolStats.keys())}forProtocol(e){return this._protocolStats.get(e)}onPeerDisconnected(e){const t=e.toB58String(),r=this._peerStats.get(t);r&&(r.stop(),this._peerStats.delete(t),this._oldPeers.set(t,r))}_onMessage({remotePeer:e,protocol:t,direction:r,dataLength:n}){if(!this._running)return;const i=f[r];let o=this.forPeer(e);if(o||(o=new c(u,this._options),this._peerStats.set(e.toB58String(),o)),o.push(i,n),this._globalStats.push(i,n),t){let e=this.forProtocol(t);e||(e=new c(u,this._options),this._protocolStats.set(t,e)),e.push(i,n)}}updatePlaceholder(e,t){if(!this._running)return;const r=this.forPeer(e),n=t.toB58String(),i=this.forPeer(t);let o=r;i&&(o=l.mergeStats(i,o),this._oldPeers.delete(n)),this._peerStats.delete(e.toB58String()),this._peerStats.set(n,o),o.start()}trackStream({stream:e,remotePeer:t,protocol:r}){const n=this,s=e.source;e.source=o((e=>n._onMessage({remotePeer:t,protocol:r,direction:"in",dataLength:e.length})))(s);const a=e.sink;return e.sink=e=>i(e,o((e=>n._onMessage({remotePeer:t,protocol:r,direction:"out",dataLength:e.length}))),a),e}static mergeStats(e,t){return e.stop(),t.stop(),e._queue=[...e._queue,...t._queue],e}}e.exports=l},87787:(e,t,r)=>{"use strict";const n=r(70248);e.exports=e=>{const t=n(e);return t.delete=t.remove,t}},61094:(e,t,r)=>{"use strict";const{EventEmitter:n}=r(17187),{BigNumber:i}=r(44431),o=r(63573),s=r(82916);e.exports=class extends n{constructor(e,t){super(),this._options=t,this._queue=[],this._stats={dataReceived:i(0),dataSent:i(0)},this._frequencyLastTime=Date.now(),this._frequencyAccumulators={},this._movingAverages={},this._update=this._update.bind(this);const r=this._options.movingAverageIntervals;for(let t=0;t{this._updateFrequencyFor(r,t,e)})),this._frequencyLastTime=e}_updateFrequencyFor(e,t,r){const n=this._frequencyAccumulators[e]||0;this._frequencyAccumulators[e]=0;const i=n/(t||1)*1e3;let s=this._movingAverages[e];s||(s=this._movingAverages[e]={});const a=this._options.movingAverageIntervals;for(let e=0;e{"use strict";const n=r(57600),i=r(11227),{promisify:o}=r(76021),{Multiaddr:s}=r(46584),a=Object.assign(i("libp2p:nat"),{error:i("libp2p:nat:err")}),{isBrowser:c}=r(97916),u=r(42693),f=r(290),l=r(28362),h=r(32114),{codes:{ERR_INVALID_PARAMETERS:d}}=r(23416),p=r(23830);function y(e=1024,t=65535){return Math.floor(Math.random()*(t-e+1)+e)}e.exports=class{constructor({peerId:e,addressManager:t,transportManager:r,...n}){if(this._peerId=e,this._addressManager=t,this._transportManager=r,this._enabled=n.enabled,this._externalIp=n.externalIp,this._options={description:n.description||`${l.name}@${l.version} ${this._peerId}`,ttl:n.ttl||7200,autoUpdate:n.keepAlive||!0,gateway:n.gateway,enablePMP:Boolean(n.pmp&&n.pmp.enabled)},this._options.ttl<7200)throw h(new Error("NatManager ttl should be at least 7200 seconds"),d)}start(){!c&&this._enabled&&this._start().catch((e=>{a.error(e)}))}async _start(){const e=this._transportManager.getAddrs();for(const t of e){const{family:e,host:r,port:n,transport:i}=t.toOptions();if(!t.isThinWaistAddress()||"tcp"!==i)continue;if(p(t))continue;if(4!==e)continue;const o=this._getClient(),c=this._externalIp||await o.externalIp();if(f(c))throw new Error(`${c} is private - please set config.nat.externalIp to an externally routable IP or ensure you are not behind a double NAT`);const u=y();a(`opening uPnP connection from ${c}:${u} to ${r}:${n}`),await o.map({publicPort:u,privatePort:n,protocol:i.toUpperCase()}),this._addressManager.addObservedAddr(s.fromNodeAddress({family:4,address:c,port:u},i))}}_getClient(){if(this._client)return this._client;const e=new n(this._options),t=o(e.map.bind(e)),r=o(e.destroy.bind(e)),i=o(e.externalIp.bind(e));return this._client={map:(...e)=>u((()=>t(...e)),{onFailedAttempt:a.error,unref:!0}),destroy:(...e)=>u((()=>r(...e)),{onFailedAttempt:a.error,unref:!0}),externalIp:(...e)=>u((()=>i(...e)),{onFailedAttempt:a.error,unref:!0})},this._client}async stop(){if(!c&&this._client)try{await this._client.destroy(),this._client=null}catch(e){a.error(e)}}}},51203:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:peer-routing"),{error:n("libp2p:peer-routing:err")}),o=r(32114),{storeAddresses:s,uniquePeers:a,requirePeers:c}=r(63952),u=r(74014),{pipe:f}=r(60618),l=r(72262),h=r(64593),d=r(55565),{setDelayedInterval:p,clearDelayedInterval:y}=r(27695);e.exports=class{constructor(e){this._peerId=e.peerId,this._peerStore=e.peerStore,this._routers=e._modules.peerRouting||[],e._dht&&e._config.dht.enabled&&this._routers.push(e._dht),this._refreshManagerOptions=e._options.peerRouting.refreshManager,this._findClosestPeersTask=this._findClosestPeersTask.bind(this)}start(){this._routers.length&&!this._timeoutId&&this._refreshManagerOptions.enabled&&(this._timeoutId=p(this._findClosestPeersTask,this._refreshManagerOptions.interval,this._refreshManagerOptions.bootDelay))}async _findClosestPeersTask(){try{await h(this.getClosestPeers(this._peerId.id))}catch(e){i.error(e)}}stop(){y(this._timeoutId)}async findPeer(e,t){if(!this._routers.length)throw o(new Error("No peer routers available"),"NO_ROUTERS_AVAILABLE");if(e.toB58String()===this._peerId.toB58String())throw o(new Error("Should not try to find self"),"ERR_FIND_SELF");const r=await f(u(...this._routers.map((r=>[r.findPeer(e,t)]))),(e=>d(e,Boolean)),(e=>s(e,this._peerStore)),(e=>l(e)));if(r)return r;throw o(new Error("not found"),"NOT_FOUND")}async*getClosestPeers(e,t={timeout:3e4}){if(!this._routers.length)throw o(new Error("No peer routers available"),"NO_ROUTERS_AVAILABLE");yield*f(u(...this._routers.map((r=>r.getClosestPeers(e,t)))),(e=>s(e,this._peerStore)),(e=>a(e)),(e=>c(e)))}}},3721:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:peer-store:address-book"),{error:n("libp2p:peer-store:address-book:err")}),o=r(32114),{Multiaddr:s}=r(46584),a=r(88785),c=r(94903),u=r(61131),{codes:{ERR_INVALID_PARAMETERS:f}}=r(23416),l=r(31244);e.exports=class extends c{constructor(e){super({peerStore:e,eventName:"change:multiaddrs",eventProperty:"multiaddrs",eventTransformer:e=>e.addresses?e.addresses.map((e=>e.multiaddr)):[]}),this.data=new Map}consumePeerRecord(e){let t;try{t=u.createFromProtobuf(e.payload)}catch(e){return i.error("invalid peer record received"),!1}if(!t.peerId.equals(e.peerId))return i("signing key does not match PeerId in the PeerRecord"),!1;if(!t.multiaddrs||!t.multiaddrs.length)return!1;const r=t.peerId,n=r.toB58String(),o=(this.data.get(n)||{record:void 0}).record;if(o&&o.seqNumber>=t.seqNumber)return!1;const s=this._toAddresses(t.multiaddrs,!0);return this._setData(r,{addresses:s,record:{raw:e.marshal(),seqNumber:t.seqNumber}}),i(`stored provided peer record for ${n}`),!0}getRawEnvelope(e){const t=this.data.get(e.toB58String());if(t&&t.record&&t.record.raw)return t.record.raw}getPeerRecord(e){const t=this.getRawEnvelope(e);if(t)return l.createFromProtobuf(t)}set(e,t){if(!a.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),f);const r=this._toAddresses(t);if(!r.length)return this;const n=e.toB58String(),s=this.data.get(n);return s&&s.addresses&&s.addresses.length===r.length&&s.addresses.filter((e=>r.some((t=>e.multiaddr.equals(t.multiaddr))))).length===s.addresses.length?(i(`the addresses provided to store are equal to the already stored for ${n}`),this):(this._setData(e,{addresses:r,record:s&&s.record}),i(`stored provided multiaddrs for ${n}`),s||this._ps.emit("peer",e),this)}add(e,t){if(!a.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),f);const r=this._toAddresses(t),n=e.toB58String();if(!r.length)return this;const s=this.data.get(n);return s&&s.addresses&&(s.addresses.forEach((e=>{r.find((t=>t.multiaddr.equals(e.multiaddr)))||r.push(e)})),s.addresses.length===r.length)?(i(`the addresses provided to store are already stored for ${n}`),this):(this._setData(e,{addresses:r,record:s&&s.record}),i(`added provided multiaddrs for ${n}`),s&&s.addresses||this._ps.emit("peer",e),this)}get(e){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),f);const t=this.data.get(e.toB58String());return t&&t.addresses?[...t.addresses]:void 0}_toAddresses(e,t=!1){if(!e)throw i.error("multiaddrs must be provided to store data"),o(new Error("multiaddrs must be provided"),f);const r=[];return e.forEach((e=>{if(!s.isMultiaddr(e))throw i.error(`multiaddr ${e} must be an instance of multiaddr`),o(new Error(`multiaddr ${e} must be an instance of multiaddr`),f);r.find((t=>t.multiaddr.equals(e)))||r.push({multiaddr:e,isCertified:t})})),r}getMultiaddrsForPeer(e,t=(e=>e)){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),f);const r=this.data.get(e.toB58String());if(r&&r.addresses)return t(r.addresses||[]).map((t=>{const r=t.multiaddr,n=r.getPeerId();return n&&n===e.toB58String()?r:r.encapsulate(`/p2p/${e.toB58String()}`)}))}}},94903:(e,t,r)=>{"use strict";const n=r(32114),i=r(88785),{codes:{ERR_INVALID_PARAMETERS:o}}=r(23416),s=e=>e;e.exports=class{constructor({peerStore:e,eventName:t,eventProperty:r,eventTransformer:n=s}){this._ps=e,this.eventName=t,this.eventProperty=r,this.eventTransformer=n,this.data=new Map}set(e,t){throw n(new Error("set must be implemented by the subclass"),"ERR_NOT_IMPLEMENTED")}_setData(e,t,{emit:r=!0}={}){const n=e.toB58String();this.data.set(n,t),r&&this._emit(e,t)}_emit(e,t){this._ps.emit(this.eventName,{peerId:e,[this.eventProperty]:this.eventTransformer(t)})}get(e){if(!i.isPeerId(e))throw n(new Error("peerId must be an instance of peer-id"),o);const t=this.data.get(e.toB58String());return t?[...t]:void 0}delete(e){if(!i.isPeerId(e))throw n(new Error("peerId must be an instance of peer-id"),o);return!!this.data.delete(e.toB58String())&&(this._emit(e,[]),!0)}}},4323:(e,t,r)=>{"use strict";const n=r(32114),{EventEmitter:i}=r(17187),o=r(88785),s=r(3721),a=r(61062),c=r(3350),u=r(51979),{codes:{ERR_INVALID_PARAMETERS:f}}=r(23416);e.exports=class extends i{constructor({peerId:e}){super(),this._peerId=e,this.addressBook=new s(this),this.keyBook=new a(this),this.metadataBook=new c(this),this.protoBook=new u(this)}start(){}stop(){}get peers(){const e=new Set([...this.addressBook.data.keys(),...this.keyBook.data.keys(),...this.protoBook.data.keys(),...this.metadataBook.data.keys()]);this._peerId&&e.delete(this._peerId.toB58String());const t=new Map;return e.forEach((e=>{t.set(e,this.get(o.createFromB58String(e)))})),t}delete(e){const t=this.addressBook.delete(e),r=this.keyBook.delete(e),n=this.protoBook.delete(e),i=this.metadataBook.delete(e);return t||r||n||i}get(e){if(!o.isPeerId(e))throw n(new Error("peerId must be an instance of peer-id"),f);const t=this.keyBook.data.get(e.toB58String()),r=this.addressBook.get(e),i=this.metadataBook.get(e),s=this.protoBook.get(e);if(t||r||i||s)return{id:t||e,addresses:r||[],protocols:s||[],metadata:i}}}},61062:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:peer-store:key-book"),{error:n("libp2p:peer-store:key-book:err")}),o=r(32114),s=r(88785),a=r(94903),{codes:{ERR_INVALID_PARAMETERS:c}}=r(23416);e.exports=class extends a{constructor(e){super({peerStore:e,eventName:"change:pubkey",eventProperty:"pubkey",eventTransformer:e=>e.pubKey}),this.data=new Map}set(e,t){if(!s.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),c);const r=e.toB58String();return!this.data.get(r)&&t&&(e.pubKey=t,this._setData(e,e),i(`stored provided public key for ${r}`)),this}get(e){if(!s.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),c);const t=this.data.get(e.toB58String());return t?t.pubKey:void 0}}},3350:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:peer-store:proto-book"),{error:n("libp2p:peer-store:proto-book:err")}),o=r(32114),{equals:s}=r(19588),a=r(88785),c=r(94903),{codes:{ERR_INVALID_PARAMETERS:u}}=r(23416);e.exports=class extends c{constructor(e){super({peerStore:e,eventName:"change:metadata",eventProperty:"metadata"}),this.data=new Map}set(e,t,r){if(!a.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),u);if("string"!=typeof t||!(r instanceof Uint8Array))throw i.error("valid key and value must be provided to store data"),o(new Error("valid key and value must be provided"),u);return this._setValue(e,t,r),this}_setValue(e,t,r,{emit:n=!0}={}){const o=e.toB58String(),a=this.data.get(o)||new Map,c=a.get(t);c&&s(r,c)?i(`the metadata provided to store is equal to the already stored for ${o} on ${t}`):(a.set(t,r),this.data.set(o,a),n&&this._emit(e,t))}get(e){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),u);return this.data.get(e.toB58String())}getValue(e,t){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),u);const r=this.data.get(e.toB58String());return r&&r.get(t)}delete(e){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),u);return!!this.data.delete(e.toB58String())&&(this._emit(e),!0)}deleteValue(e,t){if(!a.isPeerId(e))throw o(new Error("peerId must be an instance of peer-id"),u);const r=this.data.get(e.toB58String());return!(!r||!r.delete(t)||(this._emit(e,t),0))}}},5922:e=>{"use strict";e.exports.NAMESPACE_COMMON="/peers/",e.exports.NAMESPACE_ADDRESS="/peers/addrs/",e.exports.NAMESPACE_KEYS="/peers/keys/",e.exports.NAMESPACE_METADATA="/peers/metadata/",e.exports.NAMESPACE_PROTOCOL="/peers/protos/"},78112:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:persistent-peer-store"),{error:n("libp2p:persistent-peer-store:err")}),{Key:o}=r(82233),{Multiaddr:s}=r(46584),a=r(88785),{base32:c}=r(22817),u=r(4323),{NAMESPACE_ADDRESS:f,NAMESPACE_COMMON:l,NAMESPACE_KEYS:h,NAMESPACE_METADATA:d,NAMESPACE_PROTOCOL:p}=r(5922),{Addresses:y}=r(7448),{Protocols:g}=r(82299);e.exports=class extends u{constructor({peerId:e,datastore:t,threshold:r=5}){super({peerId:e}),this._datastore=t,this._dirtyPeers=new Set,this._dirtyMetadata=new Map,this.threshold=r,this._addDirtyPeer=this._addDirtyPeer.bind(this)}async start(){i("PeerStore is starting"),this.on("change:protocols",this._addDirtyPeer),this.on("change:multiaddrs",this._addDirtyPeer),this.on("change:pubkey",this._addDirtyPeerKey),this.on("change:metadata",this._addDirtyPeerMetadata);for await(const e of this._datastore.query({prefix:l}))await this._processDatastoreEntry(e);i("PeerStore started")}async stop(){i("PeerStore is stopping"),this.removeAllListeners(),await this._commitData(),i("PeerStore stopped")}_addDirtyPeer({peerId:e}){const t=e.toB58String();i("add dirty peer",t),this._dirtyPeers.add(t),this._dirtyPeers.size>=this.threshold&&this._commitData().catch((e=>{i.error("error committing data",e)}))}_addDirtyPeerKey({peerId:e}){if(e.hasInlinePublicKey())return;const t=e.toB58String();i("add dirty peer key",t),this._dirtyPeers.add(t),this._dirtyPeers.size>=this.threshold&&this._commitData().catch((e=>{i.error("error committing data",e)}))}_addDirtyPeerMetadata({peerId:e,metadata:t}){const r=e.toB58String();i("add dirty metadata peer",r),this._dirtyPeers.add(r);const n=this._dirtyMetadata.get(r)||new Set;n.add(t),this._dirtyMetadata.set(r,n),this._dirtyPeers.size>=this.threshold&&this._commitData().catch((e=>{i.error("error committing data",e)}))}async _commitData(){const e=Array.from(this._dirtyPeers);if(!e.length)return;this._dirtyPeers.clear(),i("create batch commit");const t=this._datastore.batch();for(const r of e){const e=this.keyBook.data.get(r)||a.createFromB58String(r);this._batchAddressBook(e,t),!e.hasInlinePublicKey()&&this._batchKeyBook(e,t),this._batchMetadataBook(e,t),this._batchProtoBook(e,t)}await t.commit(),i("batch committed")}_batchAddressBook(e,t){const r=e.toString(),n=new o(`${f}${r}`),s=this.addressBook.data.get(e.toB58String());try{if(!s)return void t.delete(n);const e=y.encode({addrs:s.addresses.map((e=>({multiaddr:e.multiaddr.bytes,isCertified:e.isCertified}))),certifiedRecord:s.record?{seq:s.record.seqNumber,raw:s.record.raw}:void 0}).finish();t.put(n,e)}catch(e){i.error(e)}}_batchKeyBook(e,t){const r=e.toString(),n=new o(`${h}${r}`);try{if(!e.pubKey)return void t.delete(n);const r=e.marshalPubKey();t.put(n,r)}catch(e){i.error(e)}}_batchMetadataBook(e,t){const r=e.toString(),n=this._dirtyMetadata.get(e.toB58String())||[];try{n.forEach((n=>{const i=new o(`${d}${r}/${n}`),s=this.metadataBook.getValue(e,n);s?t.put(i,s):t.delete(i)}))}catch(e){i.error(e)}}_batchProtoBook(e,t){const r=e.toString(),n=new o(`${p}${r}`),s=this.protoBook.get(e);try{if(!s)return void t.delete(n);const e=g.encode({protocols:s}).finish();t.put(n,e)}catch(e){i.error(e)}}async _processDatastoreEntry({key:e,value:t}){try{const r=e.toString().split("/"),n=a.createFromBytes(c.decode(r[3]));let o;switch(r[2]){case"addrs":o=y.decode(t),this.addressBook._setData(n,{addresses:o.addrs.map((e=>({multiaddr:new s(e.multiaddr),isCertified:Boolean(e.isCertified)}))),record:o.certifiedRecord?{raw:o.certifiedRecord.raw,seqNumber:o.certifiedRecord.seq}:void 0},{emit:!1});break;case"keys":o=await a.createFromPubKey(t),this.keyBook._setData(o,o,{emit:!1});break;case"metadata":this.metadataBook._setValue(n,r[4],t,{emit:!1});break;case"protos":o=g.decode(t),this.protoBook._setData(n,new Set(o.protocols),{emit:!1});break;default:i("invalid data persisted for: ",e.toString())}}catch(e){i.error(e)}}}},7448:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-address-book"]||(n.roots["libp2p-address-book"]={});a.Addresses=function(){function e(e){if(this.addrs=[],e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.addrs&&n.addrs.length||(n.addrs=[]),n.addrs.push(a.Addresses.Address.decode(e,e.uint32()));break;case 2:n.certifiedRecord=a.Addresses.CertifiedRecord.decode(e,e.uint32());break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.Addresses)return e;var t=new a.Addresses;if(e.addrs){if(!Array.isArray(e.addrs))throw TypeError(".Addresses.addrs: array expected");t.addrs=[];for(var r=0;r>>3){case 1:n.multiaddr=e.bytes();break;case 2:n.isCertified=e.bool();break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.Addresses.Address)return e;var t=new a.Addresses.Address;return null!=e.multiaddr&&("string"==typeof e.multiaddr?s.base64.decode(e.multiaddr,t.multiaddr=s.newBuffer(s.base64.length(e.multiaddr)),0):e.multiaddr.length&&(t.multiaddr=e.multiaddr)),null!=e.isCertified&&(t.isCertified=Boolean(e.isCertified)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(t.bytes===String?r.multiaddr="":(r.multiaddr=[],t.bytes!==Array&&(r.multiaddr=s.newBuffer(r.multiaddr))),r.isCertified=!1),null!=e.multiaddr&&e.hasOwnProperty("multiaddr")&&(r.multiaddr=t.bytes===String?s.base64.encode(e.multiaddr,0,e.multiaddr.length):t.bytes===Array?Array.prototype.slice.call(e.multiaddr):e.multiaddr),null!=e.isCertified&&e.hasOwnProperty("isCertified")&&(r.isCertified=e.isCertified),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e}(),e.CertifiedRecord=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.seq=e.uint64();break;case 2:n.raw=e.bytes();break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.Addresses.CertifiedRecord)return e;var t=new a.Addresses.CertifiedRecord;return null!=e.seq&&(s.Long?(t.seq=s.Long.fromValue(e.seq)).unsigned=!0:"string"==typeof e.seq?t.seq=parseInt(e.seq,10):"number"==typeof e.seq?t.seq=e.seq:"object"==typeof e.seq&&(t.seq=new s.LongBits(e.seq.low>>>0,e.seq.high>>>0).toNumber(!0))),null!=e.raw&&("string"==typeof e.raw?s.base64.decode(e.raw,t.raw=s.newBuffer(s.base64.length(e.raw)),0):e.raw.length&&(t.raw=e.raw)),t},e.toObject=function(e,t){t||(t={});var r={};if(t.defaults){if(s.Long){var n=new s.Long(0,0,!0);r.seq=t.longs===String?n.toString():t.longs===Number?n.toNumber():n}else r.seq=t.longs===String?"0":0;t.bytes===String?r.raw="":(r.raw=[],t.bytes!==Array&&(r.raw=s.newBuffer(r.raw)))}return null!=e.seq&&e.hasOwnProperty("seq")&&("number"==typeof e.seq?r.seq=t.longs===String?String(e.seq):e.seq:r.seq=t.longs===String?s.Long.prototype.toString.call(e.seq):t.longs===Number?new s.LongBits(e.seq.low>>>0,e.seq.high>>>0).toNumber(!0):e.seq),null!=e.raw&&e.hasOwnProperty("raw")&&(r.raw=t.bytes===String?s.base64.encode(e.raw,0,e.raw.length):t.bytes===Array?Array.prototype.slice.call(e.raw):e.raw),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e}(),e}(),e.exports=a},82299:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-proto-book"]||(n.roots["libp2p-proto-book"]={});a.Protocols=function(){function e(e){if(this.protocols=[],e)for(var t=Object.keys(e),r=0;r>>3==1?(n.protocols&&n.protocols.length||(n.protocols=[]),n.protocols.push(e.string())):e.skipType(7&o)}return n},e.fromObject=function(e){if(e instanceof a.Protocols)return e;var t=new a.Protocols;if(e.protocols){if(!Array.isArray(e.protocols))throw TypeError(".Protocols.protocols: array expected");t.protocols=[];for(var r=0;r{"use strict";const n=r(11227),i=Object.assign(n("libp2p:peer-store:proto-book"),{error:n("libp2p:peer-store:proto-book:err")}),o=r(32114),s=r(88785),a=r(94903),{codes:{ERR_INVALID_PARAMETERS:c}}=r(23416);e.exports=class extends a{constructor(e){super({peerStore:e,eventName:"change:protocols",eventProperty:"protocols",eventTransformer:e=>Array.from(e)}),this.data=new Map}set(e,t){if(!s.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),c);if(!t)throw i.error("protocols must be provided to store data"),o(new Error("protocols must be provided"),c);const r=e.toB58String(),n=this.data.get(r),a=new Set(t);return n&&(f=a,(u=n).size===f.size&&[...u].every((e=>f.has(e))))?(i(`the protocols provided to store are equal to the already stored for ${r}`),this):(this._setData(e,a),i(`stored provided protocols for ${r}`),this);var u,f}add(e,t){if(!s.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),c);if(!t)throw i.error("protocols must be provided to store data"),o(new Error("protocols must be provided"),c);const r=e.toB58String(),n=this.data.get(r)||new Set,a=new Set([...n,...t]);return n.size===a.size?(i(`the protocols provided to store are already stored for ${r}`),this):(this._setData(e,a),i(`added provided protocols for ${r}`),this)}remove(e,t){if(!s.isPeerId(e))throw i.error("peerId must be an instance of peer-id to store data"),o(new Error("peerId must be an instance of peer-id"),c);if(!t)throw i.error("protocols must be provided to store data"),o(new Error("protocols must be provided"),c);const r=e.toB58String(),n=this.data.get(r);if(n){const o=new Set([...n].filter((e=>!t.includes(e))));if(n.size===o.size)return this;this._setData(e,o),i(`removed provided protocols for ${r}`)}return this}}},77667:e=>{"use strict";e.exports={PROTOCOL:"/ipfs/ping/1.0.0",PING_LENGTH:32,PROTOCOL_VERSION:"1.0.0",PROTOCOL_NAME:"ping"}},75466:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:ping"),{error:n("libp2p:ping:err")}),o=r(32114),s=r(49928),{pipe:a}=r(60618),{toBuffer:c}=r(96653),{collect:u,take:f}=r(38386),{equals:l}=r(19588),{PROTOCOL_NAME:h,PING_LENGTH:d,PROTOCOL_VERSION:p}=r(77667);(t=e.exports=async function(e,t){const r=`/${e._config.protocolPrefix}/${h}/${p}`;i("dialing %s to %s",r,t.toB58String?t.toB58String():t);const n=await e.dial(t),{stream:y}=await n.newStream(r),g=Date.now(),b=s.randomBytes(d),[m]=await a([b],y,(e=>f(1,e)),c,u),v=Date.now();if(!l(b,m))throw o(new Error("Received wrong ping ack"),"ERR_WRONG_PING_ACK");return v-g}).mount=function(e){e.handle(`/${e._config.protocolPrefix}/${h}/${p}`,(({stream:e})=>a(e,e)))},t.unmount=function(e){e.unhandle(`/${e._config.protocolPrefix}/${h}/${p}`)}},65993:e=>{"use strict";e.exports=function(e,t,r){const n=new e(t,r);return n._subscribeAdapter=n.subscribe,n._unsubscribeAdapter=n.unsubscribe,n.subscribe=function(e,t){t&&n.on(e,t),n._subscribeAdapter(e)},n.unsubscribe=function(e,t){t?n.removeListener(e,t):n.removeAllListeners(e),0===n.listenerCount(e)&&n._unsubscribeAdapter(e)},n}},60709:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-envelope"]||(n.roots["libp2p-envelope"]={});a.Envelope=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.publicKey=e.bytes();break;case 2:n.payloadType=e.bytes();break;case 3:n.payload=e.bytes();break;case 5:n.signature=e.bytes();break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.Envelope)return e;var t=new a.Envelope;return null!=e.publicKey&&("string"==typeof e.publicKey?s.base64.decode(e.publicKey,t.publicKey=s.newBuffer(s.base64.length(e.publicKey)),0):e.publicKey.length&&(t.publicKey=e.publicKey)),null!=e.payloadType&&("string"==typeof e.payloadType?s.base64.decode(e.payloadType,t.payloadType=s.newBuffer(s.base64.length(e.payloadType)),0):e.payloadType.length&&(t.payloadType=e.payloadType)),null!=e.payload&&("string"==typeof e.payload?s.base64.decode(e.payload,t.payload=s.newBuffer(s.base64.length(e.payload)),0):e.payload.length&&(t.payload=e.payload)),null!=e.signature&&("string"==typeof e.signature?s.base64.decode(e.signature,t.signature=s.newBuffer(s.base64.length(e.signature)),0):e.signature.length&&(t.signature=e.signature)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(t.bytes===String?r.publicKey="":(r.publicKey=[],t.bytes!==Array&&(r.publicKey=s.newBuffer(r.publicKey))),t.bytes===String?r.payloadType="":(r.payloadType=[],t.bytes!==Array&&(r.payloadType=s.newBuffer(r.payloadType))),t.bytes===String?r.payload="":(r.payload=[],t.bytes!==Array&&(r.payload=s.newBuffer(r.payload))),t.bytes===String?r.signature="":(r.signature=[],t.bytes!==Array&&(r.signature=s.newBuffer(r.signature)))),null!=e.publicKey&&e.hasOwnProperty("publicKey")&&(r.publicKey=t.bytes===String?s.base64.encode(e.publicKey,0,e.publicKey.length):t.bytes===Array?Array.prototype.slice.call(e.publicKey):e.publicKey),null!=e.payloadType&&e.hasOwnProperty("payloadType")&&(r.payloadType=t.bytes===String?s.base64.encode(e.payloadType,0,e.payloadType.length):t.bytes===Array?Array.prototype.slice.call(e.payloadType):e.payloadType),null!=e.payload&&e.hasOwnProperty("payload")&&(r.payload=t.bytes===String?s.base64.encode(e.payload,0,e.payload.length):t.bytes===Array?Array.prototype.slice.call(e.payload):e.payload),null!=e.signature&&e.hasOwnProperty("signature")&&(r.signature=t.bytes===String?s.base64.encode(e.signature,0,e.signature.length):t.bytes===Array?Array.prototype.slice.call(e.signature):e.signature),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e}(),e.exports=a},31244:(e,t,r)=>{"use strict";const n=r(32114),{concat:i}=r(20605),{fromString:o}=r(52217),s=r(92826),a=r(88785),c=r(31997),{equals:u}=r(19588),{codes:f}=r(23416),{Envelope:l}=r(60709);class h{constructor({peerId:e,payloadType:t,payload:r,signature:n}){this.peerId=e,this.payloadType=t,this.payload=r,this.signature=n,this._marshal=void 0}marshal(){if(this._marshal)return this._marshal;const e=s.marshalPublicKey(this.peerId.pubKey);return this._marshal=l.encode({publicKey:e,payloadType:this.payloadType,payload:this.payload,signature:this.signature}).finish(),this._marshal}equals(e){return u(this.peerId.pubKey.bytes,e.peerId.pubKey.bytes)&&u(this.payloadType,e.payloadType)&&u(this.payload,e.payload)&&u(this.signature,e.signature)}validate(e){const t=d(e,this.payloadType,this.payload);return this.peerId.pubKey.verify(t,this.signature)}}const d=(e,t,r)=>{const n=o(e),s=c.encode(n.byteLength),a=c.encode(t.length),u=c.encode(r.length);return i([new Uint8Array(s),n,new Uint8Array(a),t,new Uint8Array(u),r])};h.createFromProtobuf=async e=>{const t=l.decode(e),r=await a.createFromPubKey(t.publicKey);return new h({peerId:r,payloadType:t.payloadType,payload:t.payload,signature:t.signature})},h.seal=async(e,t)=>{const r=e.domain,n=e.codec,i=e.marshal(),o=d(r,n,i),s=await t.privKey.sign(o);return new h({peerId:t,payloadType:n,payload:i,signature:s})},h.openAndCertify=async(e,t)=>{const r=await h.createFromProtobuf(e);if(!await r.validate(t))throw n(new Error("envelope signature is not valid for the given domain"),f.ERR_SIGNATURE_NOT_VALID);return r},e.exports=h},77854:e=>{"use strict";const t=Uint8Array.from([3,1]);e.exports={ENVELOPE_DOMAIN_PEER_RECORD:"libp2p-peer-record",ENVELOPE_PAYLOAD_TYPE_PEER_RECORD:t}},61131:(e,t,r)=>{"use strict";const{Multiaddr:n}=r(46584),i=r(88785),o=r(52942),{PeerRecord:s}=r(81183),{ENVELOPE_DOMAIN_PEER_RECORD:a,ENVELOPE_PAYLOAD_TYPE_PEER_RECORD:c}=r(77854);class u{constructor({peerId:e,multiaddrs:t=[],seqNumber:r=Date.now()}){this.domain=a,this.codec=c,this.peerId=e,this.multiaddrs=t,this.seqNumber=r,this._marshal=void 0}marshal(){return this._marshal||(this._marshal=s.encode({peerId:this.peerId.toBytes(),seq:this.seqNumber,addresses:this.multiaddrs.map((e=>({multiaddr:e.bytes})))}).finish()),this._marshal}equals(e){return e instanceof u&&!!this.peerId.equals(e.peerId)&&this.seqNumber===e.seqNumber&&!!o(this.multiaddrs,e.multiaddrs)}}u.createFromProtobuf=e=>{const t=s.decode(e),r=i.createFromBytes(t.peerId),o=(t.addresses||[]).map((e=>new n(e.multiaddr))),a=Number(t.seq);return new u({peerId:r,multiaddrs:o,seqNumber:a})},u.DOMAIN=a,e.exports=u},81183:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-peer-record"]||(n.roots["libp2p-peer-record"]={});a.PeerRecord=function(){function e(e){if(this.addresses=[],e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.peerId=e.bytes();break;case 2:n.seq=e.uint64();break;case 3:n.addresses&&n.addresses.length||(n.addresses=[]),n.addresses.push(a.PeerRecord.AddressInfo.decode(e,e.uint32()));break;default:e.skipType(7&o)}}return n},e.fromObject=function(e){if(e instanceof a.PeerRecord)return e;var t=new a.PeerRecord;if(null!=e.peerId&&("string"==typeof e.peerId?s.base64.decode(e.peerId,t.peerId=s.newBuffer(s.base64.length(e.peerId)),0):e.peerId.length&&(t.peerId=e.peerId)),null!=e.seq&&(s.Long?(t.seq=s.Long.fromValue(e.seq)).unsigned=!0:"string"==typeof e.seq?t.seq=parseInt(e.seq,10):"number"==typeof e.seq?t.seq=e.seq:"object"==typeof e.seq&&(t.seq=new s.LongBits(e.seq.low>>>0,e.seq.high>>>0).toNumber(!0))),e.addresses){if(!Array.isArray(e.addresses))throw TypeError(".PeerRecord.addresses: array expected");t.addresses=[];for(var r=0;r>>0,e.seq.high>>>0).toNumber(!0):e.seq),e.addresses&&e.addresses.length){r.addresses=[];for(var i=0;i>>3==1?n.multiaddr=e.bytes():e.skipType(7&o)}return n},e.fromObject=function(e){if(e instanceof a.PeerRecord.AddressInfo)return e;var t=new a.PeerRecord.AddressInfo;return null!=e.multiaddr&&("string"==typeof e.multiaddr?s.base64.decode(e.multiaddr,t.multiaddr=s.newBuffer(s.base64.length(e.multiaddr)),0):e.multiaddr.length&&(t.multiaddr=e.multiaddr)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(t.bytes===String?r.multiaddr="":(r.multiaddr=[],t.bytes!==Array&&(r.multiaddr=s.newBuffer(r.multiaddr)))),null!=e.multiaddr&&e.hasOwnProperty("multiaddr")&&(r.multiaddr=t.bytes===String?s.base64.encode(e.multiaddr,0,e.multiaddr.length):t.bytes===Array?Array.prototype.slice.call(e.multiaddr):e.multiaddr),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e}(),e}(),e.exports=a},1001:(e,t,r)=>{"use strict";const n=r(31244),i=r(61131);e.exports.updateSelfPeerRecord=async function(e){const t=new i({peerId:e.peerId,multiaddrs:e.multiaddrs}),r=await n.seal(t,e.peerId);e.peerStore.addressBook.consumePeerRecord(r)}},28861:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:registrar"),{error:n("libp2p:registrar:err")}),o=r(32114),{codes:{ERR_INVALID_PARAMETERS:s}}=r(23416),a=r(7609);e.exports=class{constructor({peerStore:e,connectionManager:t}){this.peerStore=e,this.connectionManager=t,this.topologies=new Map,this._handle=void 0,this._onDisconnect=this._onDisconnect.bind(this),this.connectionManager.on("peer:disconnect",this._onDisconnect)}get handle(){return this._handle}set handle(e){this._handle=e}getConnection(e){return this.connectionManager.get(e)}register(e){if(!a.isTopology(e))throw i.error("topology must be an instance of interfaces/topology"),o(new Error("topology must be an instance of interfaces/topology"),s);const t=(1e9*Math.random()).toString(36)+Date.now();return this.topologies.set(t,e),e.registrar=this,t}unregister(e){return this.topologies.delete(e)}_onDisconnect(e){for(const[,t]of this.topologies)t.disconnect(e.remotePeer)}}},6984:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:transports"),{error:n("libp2p:transports:err")}),o=r(13296),{codes:s}=r(23416),a=r(32114),{updateSelfPeerRecord:c}=r(1001);class u{constructor({libp2p:e,upgrader:t,faultTolerance:r=f.FATAL_ALL}){this.libp2p=e,this.upgrader=t,this._transports=new Map,this._listeners=new Map,this._listenerOptions=new Map,this.faultTolerance=r}add(e,t,r={}){if(i("adding %s",e),!e)throw a(new Error(`Transport must have a valid key, was given '${e}'`),s.ERR_INVALID_KEY);if(this._transports.has(e))throw a(new Error("There is already a transport with this key"),s.ERR_DUPLICATE_TRANSPORT);const n=new t({...r,libp2p:this.libp2p,upgrader:this.upgrader});this._transports.set(e,n),this._listenerOptions.set(e,r.listenerOptions||{}),this._listeners.has(e)||this._listeners.set(e,[])}async close(){const e=[];for(const[t,r]of this._listeners)for(i("closing listeners for %s",t);r.length;){const t=r.pop();t.removeAllListeners("listening"),t.removeAllListeners("close"),e.push(t.close())}await Promise.all(e),i("all listeners closed");for(const e of this._listeners.keys())this._listeners.set(e,[])}async dial(e,t){const r=this.transportForMultiaddr(e);if(!r)throw a(new Error(`No transport available for address ${String(e)}`),s.ERR_TRANSPORT_UNAVAILABLE);try{return await r.dial(e,t)}catch(e){throw e.code||(e.code=s.ERR_TRANSPORT_DIAL_FAILED),e}}getAddrs(){let e=[];for(const t of this._listeners.values())for(const r of t)e=[...e,...r.getAddrs()];return e}getTransports(){return this._transports.values()}transportForMultiaddr(e){for(const t of this._transports.values())if(t.filter([e]).length)return t;return null}async listen(e){if(!e||0===e.length)return void i("no addresses were provided for listening, this node is dial only");const t=[];for(const[r,n]of this._transports.entries()){const u=n.filter(e),l=[];for(const e of u){i("creating listener for %s on %s",r,e);const t=n.createListener(this._listenerOptions.get(r));this._listeners.get(r).push(t),t.on("listening",(()=>c(this.libp2p))),t.on("close",(()=>c(this.libp2p))),l.push(t.listen(e))}if(0!==l.length){if(!(await o(l)).find((e=>!0===e.isFulfilled))&&this.faultTolerance!==f.NO_FATAL)throw a(new Error(`Transport (${r}) could not listen on any available address`),s.ERR_NO_VALID_ADDRESSES)}else t.push(r)}if(t.length===this._transports.size){const e=`no valid addresses were provided for transports [${t}]`;if(this.faultTolerance===f.FATAL_ALL)throw a(new Error(e),s.ERR_NO_VALID_ADDRESSES);i(`libp2p in dial mode only: ${e}`)}}async remove(e){if(i("removing %s",e),this._listeners.has(e))for(const t of this._listeners.get(e))t.removeAllListeners("listening"),t.removeAllListeners("close"),await t.close();this._transports.delete(e),this._listeners.delete(e)}async removeAll(){const e=[];for(const t of this._transports.keys())e.push(this.remove(t));await Promise.all(e)}}const f={FATAL_ALL:0,NO_FATAL:1};u.FaultTolerance=f,e.exports=u},21003:(e,t,r)=>{"use strict";const n=r(11227),i=Object.assign(n("libp2p:upgrader"),{error:n("libp2p:upgrader:err")}),o=r(32114),s=r(8738),{Connection:a}=r(15458),c=r(88785),{pipe:u}=r(60618),f=r(99633),{codes:l}=r(23416);e.exports=class{constructor({localPeer:e,metrics:t,cryptos:r=new Map,muxers:n=new Map,onConnectionEnd:i=(()=>{}),onConnection:o=(()=>{})}){this.localPeer=e,this.metrics=t,this.cryptos=r,this.muxers=n,this.protector=null,this.protocols=new Map,this.onConnection=o,this.onConnectionEnd=i}async upgradeInbound(e){let t,r,n,o,s,a,c;if(this.metrics){({setTarget:a,proxy:c}=f());const t=(1e9*Math.random()).toString(36)+Date.now();a({toB58String:()=>t}),e=this.metrics.trackStream({stream:e,remotePeer:c})}i("Starting the inbound connection upgrade");let u=e;this.protector&&(u=await this.protector.protect(e));try{({conn:t,remotePeer:r,protocol:s}=await this._encryptInbound(this.localPeer,u,this.cryptos)),this.muxers.size?({stream:n,Muxer:o}=await this._multiplexInbound(t,this.muxers)):n=t}catch(t){throw i.error("Failed to upgrade inbound connection",t),await e.close(t),t}return this.metrics&&(this.metrics.updatePlaceholder(c,r),a(r)),i("Successfully upgraded inbound connection"),this._createConnection({cryptoProtocol:s,direction:"inbound",maConn:e,upgradedConn:n,Muxer:o,remotePeer:r})}async upgradeOutbound(e){const t=e.remoteAddr.getPeerId();if(!t)throw o(new Error("outbound connection must have a peer id"),l.ERR_INVALID_MULTIADDR);const r=c.createFromB58String(t);let n,s,a,u,h,d,p;if(this.metrics){({setTarget:d,proxy:p}=f());const t=(1e9*Math.random()).toString(36)+Date.now();d({toB58String:()=>t}),e=this.metrics.trackStream({stream:e,remotePeer:p})}i("Starting the outbound connection upgrade");let y=e;this.protector&&(y=await this.protector.protect(e));try{({conn:n,remotePeer:s,protocol:u}=await this._encryptOutbound(this.localPeer,y,r,this.cryptos)),this.muxers.size?({stream:a,Muxer:h}=await this._multiplexOutbound(n,this.muxers)):a=n}catch(t){throw i.error("Failed to upgrade outbound connection",t),await e.close(t),t}return this.metrics&&(this.metrics.updatePlaceholder(p,s),d(s)),i("Successfully upgraded outbound connection"),this._createConnection({cryptoProtocol:u,direction:"outbound",maConn:e,upgradedConn:a,Muxer:h,remotePeer:s})}_createConnection({cryptoProtocol:e,direction:t,maConn:r,upgradedConn:n,Muxer:c,remotePeer:f}){let h,d,p;c&&(h=new c({onStream:async e=>{if(!p)return;const r=new s.Listener(e);try{const{stream:n,protocol:o}=await r.handle(Array.from(this.protocols.keys()));i("%s: incoming stream opened on %s",t,o),this.metrics&&this.metrics.trackStream({stream:n,remotePeer:f,protocol:o}),p.addStream(e,{protocol:o}),this._onStream({connection:p,stream:{...e,...n},protocol:o})}catch(e){i.error(e)}},onStreamEnd:e=>{p.removeStream(e.id)}}),d=async e=>{i("%s: starting new stream on %s",t,e);const r=h.newStream(),n=new s.Dialer(r);try{const{stream:t,protocol:i}=await n.select(e);return this.metrics&&this.metrics.trackStream({stream:t,remotePeer:f,protocol:i}),{stream:{...r,...t},protocol:i}}catch(e){throw i.error("could not create new stream",e),o(e,l.ERR_UNSUPPORTED_PROTOCOL)}},u(n,h,n).catch(i.error));const y=r.timeline;r.timeline=new Proxy(y,{set:(...e)=>(p&&"close"===e[1]&&e[2]&&!y.close&&(async()=>{try{"open"===p.stat.status&&await p.close()}catch(e){i.error(e)}finally{this.onConnectionEnd(p)}})(),Reflect.set(...e))}),r.timeline.upgraded=Date.now();const g=()=>{throw o(new Error("connection is not multiplexed"),"ERR_CONNECTION_NOT_MULTIPLEXED")};return p=new a({localAddr:r.localAddr,remoteAddr:r.remoteAddr,localPeer:this.localPeer,remotePeer:f,stat:{direction:t,timeline:r.timeline,multiplexer:c&&c.multicodec,encryption:e},newStream:d||g,getStreams:()=>h?h.streams:g(),close:async()=>{await r.close(),h&&h.streams.map((e=>e.abort()))}}),this.onConnection(p),p}_onStream({connection:e,stream:t,protocol:r}){this.protocols.get(r)({connection:e,stream:t,protocol:r})}async _encryptInbound(e,t,r){const n=new s.Listener(t),a=Array.from(r.keys());i("handling inbound crypto protocol selection",a);try{const{stream:t,protocol:o}=await n.handle(a),s=r.get(o);if(i("encrypting inbound connection..."),!s)throw new Error(`no crypto module found for ${o}`);return{...await s.secureInbound(e,t),protocol:o}}catch(e){throw o(e,l.ERR_ENCRYPTION_FAILED)}}async _encryptOutbound(e,t,r,n){const a=new s.Dialer(t),c=Array.from(n.keys());i("selecting outbound crypto protocol",c);try{const{stream:t,protocol:o}=await a.select(c),s=n.get(o);if(i("encrypting outbound connection to %j",r),!s)throw new Error(`no crypto module found for ${o}`);return{...await s.secureOutbound(e,t,r),protocol:o}}catch(e){throw o(e,l.ERR_ENCRYPTION_FAILED)}}async _multiplexOutbound(e,t){const r=new s.Dialer(e),n=Array.from(t.keys());i("outbound selecting muxer %s",n);try{const{stream:e,protocol:o}=await r.select(n);return i("%s selected as muxer protocol",o),{stream:e,Muxer:t.get(o)}}catch(e){throw o(e,l.ERR_MUXER_UNAVAILABLE)}}async _multiplexInbound(e,t){const r=new s.Listener(e),n=Array.from(t.keys());i("inbound handling muxers %s",n);try{const{stream:e,protocol:i}=await r.handle(n);return{stream:e,Muxer:t.get(i)}}catch(e){throw o(e,l.ERR_MUXER_UNAVAILABLE)}}}},2043:function(e,t,r){var n,i;!function(o,s){"use strict";n=function(){var e=function(){},t="undefined",r=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function i(e,t){var r=e[t];if("function"==typeof r.bind)return r.bind(e);try{return Function.prototype.bind.call(r,e)}catch(t){return function(){return Function.prototype.apply.apply(r,[e,arguments])}}}function o(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function s(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&r?o:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}function a(t,r){for(var i=0;i=0&&r<=s.levels.SILENT))throw"log.setLevel() called with invalid level: "+r;if(o=r,!1!==i&&function(e){var r=(n[e]||"silent").toUpperCase();if(typeof window!==t&&c){try{return void(window.localStorage[c]=r)}catch(e){}try{window.document.cookie=encodeURIComponent(c)+"="+r+";"}catch(e){}}}(r),a.call(s,r,e),typeof console===t&&r{"use strict";const{Multiaddr:n}=r(46584),i=k("dns4"),o=k("dns6"),s=k("dnsaddr"),a=R(k("dns"),s,i,o),c=R(k("ip4"),k("ip6")),u=R(P(c,k("tcp")),P(a,k("tcp"))),f=P(c,k("udp")),l=P(f,k("utp")),h=P(f,k("quic")),d=R(P(u,k("ws")),P(a,k("ws"))),p=R(P(u,k("wss")),P(a,k("wss"))),y=R(P(u,k("http")),P(c,k("http")),P(a,k("http"))),g=R(P(u,k("https")),P(c,k("https")),P(a,k("https"))),b=R(P(d,k("p2p-webrtc-star"),k("p2p")),P(p,k("p2p-webrtc-star"),k("p2p")),P(d,k("p2p-webrtc-star")),P(p,k("p2p-webrtc-star"))),m=R(P(d,k("p2p-websocket-star"),k("p2p")),P(p,k("p2p-websocket-star"),k("p2p")),P(d,k("p2p-websocket-star")),P(p,k("p2p-websocket-star"))),v=R(P(y,k("p2p-webrtc-direct"),k("p2p")),P(g,k("p2p-webrtc-direct"),k("p2p")),P(y,k("p2p-webrtc-direct")),P(g,k("p2p-webrtc-direct"))),w=R(d,p,y,g,b,v,u,l,h,a),E=R(P(w,k("p2p-stardust"),k("p2p")),P(w,k("p2p-stardust"))),_=R(P(w,k("p2p")),b,v,k("p2p")),S=R(P(_,k("p2p-circuit"),_),P(_,k("p2p-circuit")),P(k("p2p-circuit"),_),P(w,k("p2p-circuit")),P(k("p2p-circuit"),w),k("p2p-circuit")),A=()=>R(P(S,A),S),T=A(),I=R(P(T,_,T),P(_,T),P(T,_),T,_);function C(e){return function(t){if(!n.isMultiaddr(t))try{t=new n(t)}catch(e){return!1}const r=e(t.protoNames());return null!==r&&(!0===r||!1===r?r:0===r.length)}}function P(...e){function t(t){if(t.length(r="function"==typeof e?e().partialMatch(t):e.partialMatch(t),Array.isArray(r)&&(t=r),null===r))),r}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:C(t),partialMatch:t}}function R(...e){function t(t){let r=null;return e.some((e=>{const n="function"==typeof e?e().partialMatch(t):e.partialMatch(t);return!!n&&(r=n,!0)})),r}return{toString:function(){return"{ "+e.join(" ")+" }"},input:e,matches:C(t),partialMatch:t}}function k(e){const t=e;return{toString:function(){return t},matches:function(e){let r;if("string"==typeof e||e instanceof Uint8Array)try{r=new n(e)}catch(e){return!1}else r=e;const i=r.protoNames();return 1===i.length&&i[0]===t},partialMatch:function(e){return 0===e.length?null:e[0]===t?e.slice(1):null}}}e.exports={DNS:a,DNS4:i,DNS6:o,DNSADDR:s,IP:c,TCP:u,UDP:f,QUIC:h,UTP:l,HTTP:y,HTTPS:g,WebSockets:d,WebSocketsSecure:p,WebSocketStar:m,WebRTCStar:b,WebRTCDirect:v,Reliable:w,Stardust:E,Circuit:T,P2P:I,IPFS:I}},70942:function(e,t,r){"use strict";const n=r(33310),{hasOwnProperty:i}=Object.prototype,{propertyIsEnumerable:o}=Object,s=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0}),a=this,c={concatArrays:!1,ignoreUndefined:!1},u=e=>{const t=[];for(const r in e)i.call(e,r)&&t.push(r);if(Object.getOwnPropertySymbols){const r=Object.getOwnPropertySymbols(e);for(const n of r)o.call(e,n)&&t.push(n)}return t};function f(e){return Array.isArray(e)?function(e){const t=e.slice(0,0);return u(e).forEach((r=>{s(t,r,f(e[r]))})),t}(e):n(e)?function(e){const t=null===Object.getPrototypeOf(e)?Object.create(null):{};return u(e).forEach((r=>{s(t,r,f(e[r]))})),t}(e):e}const l=(e,t,r,n)=>(r.forEach((r=>{void 0===t[r]&&n.ignoreUndefined||(r in e&&e[r]!==Object.getPrototypeOf(e)?s(e,r,h(e[r],t[r],n)):s(e,r,f(t[r])))})),e);function h(e,t,r){return r.concatArrays&&Array.isArray(e)&&Array.isArray(t)?((e,t,r)=>{let n=e.slice(0,0),o=0;return[e,t].forEach((t=>{const a=[];for(let r=0;r!a.includes(e))),r)})),n})(e,t,r):n(t)&&n(e)?l(e,t,u(t),r):f(t)}e.exports=function(...e){const t=h(f(c),this!==a&&this||{},c);let r={_:{}};for(const i of e)if(void 0!==i){if(!n(i))throw new TypeError("`"+i+"` is not an Option Object");r=h(r,{_:i},t)}return r._}},79746:e=>{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},34504:(e,t)=>{"use strict";var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,s=255&i;o?r.push(o,s):r.push(s)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}},57824:e=>{var t=1e3,r=60*t,n=60*r,i=24*n;function o(e,t,r,n){var i=t>=1.5*r;return Math.round(e/r)+" "+n+(i?"s":"")}e.exports=function(e,s){s=s||{};var a,c,u=typeof e;if("string"===u&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var o=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(o){var s=parseFloat(o[1]);switch((o[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*s;case"weeks":case"week":case"w":return 6048e5*s;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===u&&isFinite(e))return s.long?(a=e,(c=Math.abs(a))>=i?o(a,c,i,"day"):c>=n?o(a,c,n,"hour"):c>=r?o(a,c,r,"minute"):c>=t?o(a,c,t,"second"):a+" ms"):function(e){var o=Math.abs(e);return o>=i?Math.round(e/i)+"d":o>=n?Math.round(e/n)+"h":o>=r?Math.round(e/r)+"m":o>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},15602:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},62137:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},57328:(e,t,r)=>{e.exports={encode:r(62137),decode:r(15602),encodingLength:r(27766)}},27766:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";const n=r(99918),i=r(89768),o=r(57328),{concat:s}=r(20605),{toString:a}=r(92263);function c(e){const t=[],r=e.split("/").slice(1);if(1===r.length&&""===r[0])return[];for(let n=0;n=r.length)throw v("invalid address: "+e);if(s.path){t.push([o,m(r.slice(n).join("/"))]);break}t.push([o,r[n]])}else t.push([o])}return t}function u(e){const t=[];return e.map((e=>{const r=w(e);return t.push(r.name),e.length>1&&t.push(e[1]),null})),m(t.join("/"))}function f(e){return e.map((e=>{Array.isArray(e)||(e=[e]);const t=w(e);return e.length>1?[t.code,n.toBytes(t.code,e[1])]:[t.code]}))}function l(e){return e.map((e=>{const t=w(e);return e[1]?[t.code,n.toString(t.code,e[1])]:[t.code]}))}function h(e){return g(s(e.map((e=>{const t=w(e);let r=Uint8Array.from(o.encode(t.code));return e.length>1&&(r=s([r,e[1]])),r}))))}function d(e,t){return e.size>0?e.size/8:0===e.size?0:o.decode(t)+o.decode.bytes}function p(e){const t=[];let r=0;for(;re.length)throw v("Invalid address Uint8Array: "+a(e,"base16"));t.push([n,u])}return t}function y(e){return h(f(c(e=m(e))))}function g(e){const t=b(e);if(t)throw t;return Uint8Array.from(e)}function b(e){try{p(e)}catch(e){return e}}function m(e){return"/"+e.trim().split("/").filter((e=>e)).join("/")}function v(e){return new Error("Error parsing address: "+e)}function w(e){return i(e[0])}e.exports={stringToStringTuples:c,stringTuplesToString:u,tuplesToStringTuples:l,stringTuplesToTuples:f,bytesToTuples:p,tuplesToBytes:h,bytesToString:function(e){return u(l(p(e)))},stringToBytes:y,fromString:function(e){return y(e)},fromBytes:g,validateBytes:b,isValidBytes:function(e){return void 0===b(e)},cleanPath:m,ParseError:v,protoFromTuple:w,sizeForAddr:d}},99918:(e,t,r)=>{"use strict";const n=r(33692),i=r(89768),{CID:o}=r(81362),{base32:s}=r(22817),{base58btc:a}=r(99086),c=r(28924),u=r(57328),{toString:f}=r(92263),{fromString:l}=r(52217),{concat:h}=r(20605);function d(e,t){return t instanceof Uint8Array?d.toString(e,t):d.toBytes(e,t)}function p(e){const t=new ArrayBuffer(2);return new DataView(t).setUint16(0,e),new Uint8Array(t)}function y(e){return new DataView(e.buffer).getUint16(e.byteOffset)}e.exports=d,d.toString=function(e,t){switch(i(e).code){case 4:case 41:return function(e){const t=n.toString(e);if(!t||!n.isIP(t))throw new Error("invalid ip address");return t}(t);case 6:case 273:case 33:case 132:return y(t).toString();case 53:case 54:case 55:case 56:case 400:case 777:return function(e){const t=u.decode(e);if((e=e.slice(u.decode.bytes)).length!==t)throw new Error("inconsistent lengths");return f(e)}(t);case 421:return function(e){const t=u.decode(e),r=e.slice(u.decode.bytes);if(r.length!==t)throw new Error("inconsistent lengths");return f(r,"base58btc")}(t);case 444:case 445:return function(e){const t=e.slice(0,e.length-2),r=e.slice(e.length-2);return f(t,"base32")+":"+y(r)}(t);default:return f(t,"base16")}},d.toBytes=function(e,t){switch(i(e).code){case 4:case 41:return function(e){if(!n.isIP(e))throw new Error("invalid ip address");return n.toBytes(e)}(t);case 6:case 273:case 33:case 132:return p(parseInt(t,10));case 53:case 54:case 55:case 56:case 400:case 777:return function(e){const t=l(e),r=Uint8Array.from(u.encode(t.length));return h([r,t],r.length+t.length)}(t);case 421:return function(e){let t;t="Q"===e[0]||"1"===e[0]?c.decode(a.decode(`z${e}`)).bytes:o.parse(e).multihash.bytes;const r=Uint8Array.from(u.encode(t.length));return h([r,t],r.length+t.length)}(t);case 444:return function(e){const t=e.split(":");if(2!==t.length)throw new Error("failed to parse onion addr: "+t+" does not contain a port number");if(16!==t[0].length)throw new Error("failed to parse onion addr: "+t[0]+" not a Tor onion address.");const r=s.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");const i=p(n);return h([r,i],r.length+i.length)}(t);case 445:return function(e){const t=e.split(":");if(2!==t.length)throw new Error("failed to parse onion addr: "+t+" does not contain a port number");if(56!==t[0].length)throw new Error("failed to parse onion addr: "+t[0]+" not a Tor onion3 address.");const r=s.decode("b"+t[0]),n=parseInt(t[1],10);if(n<1||n>65536)throw new Error("Port number is not in range(1, 65536)");const i=p(n);return h([r,i],r.length+i.length)}(t);default:return l(t,"base16")}}},46584:(e,t,r)=>{"use strict";const n=r(18190),i=r(89768),o=r(57328),{CID:s}=r(81362),{base58btc:a}=r(99086),c=r(32114),u=Symbol.for("nodejs.util.inspect.custom"),{toString:f}=r(92263),{equals:l}=r(19588),h=new Map,d=Symbol.for("@multiformats/js-multiaddr/multiaddr");class p{constructor(e){if(null==e&&(e=""),Object.defineProperty(this,d,{value:!0}),e instanceof Uint8Array)this.bytes=n.fromBytes(e);else if("string"==typeof e){if(e.length>0&&"/"!==e.charAt(0))throw new Error(`multiaddr "${e}" must start with a "/"`);this.bytes=n.fromString(e)}else{if(!p.isMultiaddr(e))throw new Error("addr must be a string, Buffer, or another Multiaddr");this.bytes=n.fromBytes(e.bytes)}}toString(){return n.bytesToString(this.bytes)}toJSON(){return this.toString()}toOptions(){const e={},t=this.toString().split("/");return e.family="ip4"===t[1]?4:6,e.host=t[2],e.transport=t[3],e.port=parseInt(t[4]),e}protos(){return this.protoCodes().map((e=>Object.assign({},i(e))))}protoCodes(){const e=[],t=this.bytes;let r=0;for(;re.name))}tuples(){return n.bytesToTuples(this.bytes)}stringTuples(){const e=n.bytesToTuples(this.bytes);return n.tuplesToStringTuples(e)}encapsulate(e){return e=new p(e),new p(this.toString()+e.toString())}decapsulate(e){const t=e.toString(),r=this.toString(),n=r.lastIndexOf(t);if(n<0)throw new Error("Address "+this+" does not contain subaddress: "+e);return new p(r.slice(0,n))}decapsulateCode(e){const t=this.tuples();for(let r=t.length-1;r>=0;r--)if(t[r][0]===e)return new p(n.tuplesToBytes(t.slice(0,r)));return this}getPeerId(){try{const e=this.stringTuples().filter((e=>e[0]===i.names.ipfs.code)),t=e.pop();if(t&&t[1]){const e=t[1];return"Q"===e[0]||"1"===e[0]?f(a.decode(`z${e}`),"base58btc"):f(s.parse(e).multihash.bytes,"base58btc")}return null}catch(e){return null}}getPath(){let e=null;try{e=this.stringTuples().filter((e=>!!i(e[0]).path))[0][1],e||(e=null)}catch(t){e=null}return e}equals(e){return l(this.bytes,e.bytes)}async resolve(){const e=this.protos().find((e=>e.resolvable));if(!e)return[this];const t=h.get(e.name);if(!t)throw c(new Error(`no available resolver for ${e.name}`),"ERR_NO_AVAILABLE_RESOLVER");return(await t(this)).map((e=>new p(e)))}nodeAddress(){const e=this.protoCodes(),t=this.protoNames(),r=this.toString().split("/").slice(1);if(r.length<4)throw new Error('multiaddr must have a valid format: "/{ip4, ip6, dns4, dns6}/{address}/{tcp, udp}/{port}".');if(4!==e[0]&&41!==e[0]&&54!==e[0]&&55!==e[0])throw new Error(`no protocol with name: "'${t[0]}'". Must have a valid family name: "{ip4, ip6, dns4, dns6}".`);if("tcp"!==r[2]&&"udp"!==r[2])throw new Error(`no protocol with name: "'${t[1]}'". Must have a valid transport protocol: "{tcp, udp}".`);return{family:41===e[0]||55===e[0]?6:4,address:r[1],port:parseInt(r[3])}}isThinWaistAddress(e){const t=(e||this).protos();return!(2!==t.length||4!==t[0].code&&41!==t[0].code||6!==t[1].code&&273!==t[1].code)}static fromNodeAddress(e,t){if(!e)throw new Error("requires node address object");if(!t)throw new Error("requires transport protocol");let r;switch(e.family){case 4:r="ip4";break;case 6:r="ip6";break;default:throw Error(`Invalid addr family. Got '${e.family}' instead of 4 or 6`)}return new p("/"+[r,e.address,t,e.port].join("/"))}static isName(e){return!!p.isMultiaddr(e)&&e.protos().some((e=>e.resolvable))}static isMultiaddr(e){return e instanceof p||Boolean(e&&e[d])}[u](){return""}inspect(){return""}}p.protocols=i,p.resolvers=h,e.exports={Multiaddr:p,multiaddr:function(e){return new p(e)},protocols:i,resolvers:h}},33692:(e,t,r)=>{"use strict";const n=r(5003),{toString:i}=r(92263),o=n,s=n.v4,a=n.v6,c=function(e,t,r){let n;if(r=~~r,s(e))n=t||new Uint8Array(r+4),e.split(/\./g).map((function(e){n[r++]=255&parseInt(e,10)}));else if(a(e)){const o=e.split(":",8);let a;for(a=0;a0;a--)e.push("0");o.splice.apply(o,e)}for(n=t||new Uint8Array(r+16),a=0;a>8&255,n[r++]=255&e}}if(!n)throw Error("Invalid ip address: "+e);return n};e.exports={isIP:o,isV4:s,isV6:a,toBytes:c,toString:function(e,t,r){t=~~t,r=r||e.length-t;const n=[];let i;const o=new DataView(e.buffer);if(4===r){for(let i=0;i{"use strict";function t(e){if("number"==typeof e){if(t.codes[e])return t.codes[e];throw new Error("no protocol with code: "+e)}if("string"==typeof e){if(t.names[e])return t.names[e];throw new Error("no protocol with name: "+e)}throw new Error("invalid protocol id type: "+e)}const r=-1;function n(e,t,r,n,i){return{code:e,size:t,name:r,resolvable:Boolean(n),path:Boolean(i)}}t.lengthPrefixedVarSize=r,t.V=r,t.table=[[4,32,"ip4"],[6,16,"tcp"],[33,16,"dccp"],[41,128,"ip6"],[42,r,"ip6zone"],[53,r,"dns","resolvable"],[54,r,"dns4","resolvable"],[55,r,"dns6","resolvable"],[56,r,"dnsaddr","resolvable"],[132,16,"sctp"],[273,16,"udp"],[275,0,"p2p-webrtc-star"],[276,0,"p2p-webrtc-direct"],[277,0,"p2p-stardust"],[290,0,"p2p-circuit"],[301,0,"udt"],[302,0,"utp"],[400,r,"unix",!1,"path"],[421,r,"ipfs"],[421,r,"p2p"],[443,0,"https"],[444,96,"onion"],[445,296,"onion3"],[446,r,"garlic64"],[460,0,"quic"],[477,0,"ws"],[478,0,"wss"],[479,0,"p2p-websocket-star"],[480,0,"http"],[777,r,"memory"]],t.names={},t.codes={},t.table.map((e=>{const r=n.apply(null,e);return t.codes[r.code]=r,t.names[r.name]=r,null})),t.object=n,e.exports=t},56557:(e,t,r)=>{"use strict";const n=r(926);e.exports=n},39004:(e,t,r)=>{"use strict";const n=r(89768),{code:i}=n("dnsaddr");e.exports={dnsaddrResolver:async function(e){const t=new(r(56557)),n=e.getPeerId(),[,o]=e.stringTuples().find((([e])=>e===i))||[];let s=(await t.resolveTxt(`_dnsaddr.${o}`)).flat().map((e=>e.split("=")[1]));return n&&(s=s.filter((e=>e.includes(n)))),s}}},16159:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(92877),s=4194304,a=n.alloc(0),c="readLength",u="readData",f={[c]:(e,t,r,n)=>{let o;t=t.append(e);try{o=n.lengthDecoder(t)}catch(e){if(t.length>n.maxLengthLength)throw Object.assign(e,{message:"message length too long",code:"ERR_MSG_LENGTH_TOO_LONG"});if(e instanceof RangeError)return{mode:c,buffer:t,chunk:void 0,state:void 0,data:void 0};throw e}if(o>n.maxDataLength)throw Object.assign(new Error("message data too long"),{code:"ERR_MSG_DATA_TOO_LONG"});return e=t.shallowSlice(n.lengthDecoder.bytes),t=new i,n.onLength&&n.onLength(o),o<=0?(n.onData&&n.onData(a),{mode:c,chunk:e,buffer:t,data:a}):{mode:u,chunk:e,buffer:t,state:{dataLength:o},data:void 0}},[u]:(e,t,r,n)=>{if(t=t.append(e),!r)throw new Error("state is required");if(t.lengtho?t.shallowSlice(o):void 0;return t=new i,n.onData&&n.onData(s),{mode:c,chunk:a,buffer:t,state:void 0,data:s}}};function l(e){const t={lengthDecoder:(e=e||{}).lengthDecoder||o,maxLengthLength:e.maxLengthLength||8,maxDataLength:e.maxDataLength||s,onLength:e.onLength,onData:e.onData};return async function*(e){let r,n=new i,o=c;for await(const i of e){let e=i;for(;e;){const i=f[o](e,n,r,t);o=i.mode,e=i.chunk,n=i.buffer,r=i.state,i.data&&(yield i.data)}}if(n.length)throw Object.assign(new Error("unexpected end of input"),{code:"ERR_UNEXPECTED_EOF"})}}l.fromReader=(e,t)=>{let r=1;const n={[Symbol.asyncIterator](){return this},next:async()=>{try{return await e.next(r)}catch(e){if("ERR_UNDER_READ"===e.code)return{done:!0,value:null};throw e}finally{r=1}}};return l({...t||{},onLength:e=>{r=e}})(n)},e.exports=l,e.exports.MAX_LENGTH_LENGTH=8,e.exports.MAX_DATA_LENGTH=s},98025:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=r(9668),o=r(17448);function s(e){e=e||{};const t=Math.max(e.poolSize||10240,e.minPoolSize||8),r=e.lengthEncoder||o;return async function*(e){let o=n.alloc(t),s=0;for await(const a of e){r(a.length,o,s);const e=o.slice(s,s+r.bytes);s+=r.bytes,o.length-s<8&&(o=n.alloc(t),s=0),yield(new i).append(e).append(a)}}}s.single=(e,t)=>{const r=(t=t||{}).lengthEncoder||o;return new i([r(e.length),e.slice()])},e.exports=s,e.exports.MIN_POOL_SIZE=8,e.exports.DEFAULT_POOL_SIZE=10240},88567:(e,t,r)=>{"use strict";t.encode=r(98025),t.decode=r(16159),t.varintEncode=r(17448),t.varintDecode=r(92877),t.int32BEEncode=r(83681),t.int32BEDecode=r(56063)},56063:e=>{"use strict";const t=e=>{if(e.length<4)throw RangeError("Could not decode int32BE");return e.readInt32BE(0)};t.bytes=4,e.exports=t},83681:(e,t,r)=>{"use strict";const{Buffer:n}=r(48764),i=(e,t,r)=>((t=t||n.allocUnsafe(4)).writeInt32BE(e,r),t);i.bytes=4,e.exports=i},92877:(e,t,r)=>{"use strict";const n=r(83387),{Buffer:i}=r(48764),o=e=>{const t=n.decode(i.isBuffer(e)?e:(r=e,new Proxy({},{get:(e,t)=>"l"===t[0]?r[t]:r.get(parseInt(t))})));var r;return o.bytes=n.decode.bytes,t};e.exports=o},17448:(e,t,r)=>{"use strict";const n=r(83387),{Buffer:i}=r(48764),o=(e,t,r)=>{const s=n.encode(e,t,r);return o.bytes=n.encode.bytes,t||i.from(s)};e.exports=o},70419:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a||o>49)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},30778:e=>{e.exports=function e(r,n,i){if(Number.MAX_SAFE_INTEGER&&r>Number.MAX_SAFE_INTEGER)throw e.bytes=0,new RangeError("Could not encode varint");n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},83387:(e,t,r)=>{e.exports={encode:r(30778),decode:r(70419),encodingLength:r(73912)}},73912:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";t.PROTOCOL_ID="/multistream/1.0.0"},43868:(e,t,r)=>{"use strict";const n=r(11227)("mss:handle"),i=r(9668),o=r(60878),s=r(52261),{PROTOCOL_ID:a}=r(48506);e.exports=async(e,t)=>{t=Array.isArray(t)?t:[t];const{writer:r,reader:c,rest:u,stream:f}=s(e);for(;;){const e=(await o.read(c)).toString();if(n('read "%s"',e),e!==a){if(t.includes(e))return o.write(r,e),n('respond with "%s" for "%s"',e,e),u(),{stream:f,protocol:e};"ls"!==e?(o.write(r,"na"),n('respond with "na" for "%s"',e)):(o.write(r,new i(t.map((e=>o.encode(e))))),n('respond with "%s" for %s',t,e))}else n('respond with "%s" for "%s"',a,e),o.write(r,a)}}},8738:(e,t,r)=>{"use strict";const n=r(27578),i=r(43868),o=r(77372),{PROTOCOL_ID:s}=r(48506);t.PROTOCOL_ID=s;class a{constructor(e){this._stream=e,this._shaken=!1}async _handshake(){if(this._shaken)return;const{stream:e}=await n(this._stream,s);this._stream=e,this._shaken=!0}}t.Dialer=class extends a{select(e){return n(this._stream,e,this._shaken?null:s)}async ls(){await this._handshake();const{stream:e,protocols:t}=await o(this._stream);return this._stream=e,t}},t.Listener=class extends a{handle(e){return i(this._stream,e)}}},77372:(e,t,r)=>{"use strict";const n=r(53469),i=r(11227)("it-multistream-select:ls"),o=r(60878),s=r(52261),a=r(88567),c=r(60618);e.exports=async e=>{const{reader:t,writer:r,rest:u,stream:f}=s(e);i('write "ls"'),o.write(r,"ls"),u();const l=await o.read(t),h=n([l]),d=[];return await c(h,a.decode(),(async e=>{for await(const t of e)d.push(t.shallowSlice(0,-1).toString())})),{stream:f,protocols:d}}},60878:(e,t,r)=>{"use strict";const n=r(9668),i=r(88567),o=r(60618),s=r(32114),{fromString:a}=r(52217),c=r(72262),u=a("\n");t.encode=e=>i.encode.single(new n([e,u])),t.write=(e,r)=>e.push(t.encode(r)),t.writeAll=(e,r)=>{e.push(r.reduce(((e,r)=>e.append(t.encode(r))),new n))},t.read=async e=>{let t=1;const r={[Symbol.asyncIterator](){return this},next:()=>e.next(t)},n=await o(r,i.decode({onLength:e=>{t=e}}),c);if(n.get(n.length-1)!==u[0])throw s(new Error("missing newline"),"ERR_INVALID_MULTISTREAM_SELECT_MESSAGE");return n.shallowSlice(0,-1)}},27578:(e,t,r)=>{"use strict";const n=r(11227)("mss:select"),i=r(32114),o=r(60878),s=r(52261);e.exports=async(e,t,r)=>{t=Array.isArray(t)?[...t]:[t];const{reader:a,writer:c,rest:u,stream:f}=s(e),l=t.shift();r?(n('select: write ["%s", "%s"]',r,l),o.writeAll(c,[r,l])):(n('select: write "%s"',l),o.write(c,l));let h=(await o.read(a)).toString();if(n('select: read "%s"',h),h===r&&(h=(await o.read(a)).toString(),n('select: read "%s"',h)),h===l)return u(),{stream:f,protocol:l};for(const e of t){n('select: write "%s"',e),o.write(c,e);const t=(await o.read(a)).toString();if(n('select: read "%s" for "%s"',t,e),t===e)return u(),{stream:f,protocol:e}}throw u(),i(new Error("protocol selection failed"),"ERR_UNSUPPORTED_PROTOCOL")}},99633:e=>{"use strict";function t(e){if(Array.isArray(e)){for(var t=0,r=Array(e.length);t{"use strict";let n;n=globalThis.AbortController&&globalThis.AbortSignal?globalThis:r(28599),e.exports.AbortSignal=n.AbortSignal,e.exports.AbortController=n.AbortController},30700:(e,t,r)=>{"use strict";globalThis.fetch&&globalThis.Headers&&globalThis.Request&&globalThis.Response?e.exports={default:globalThis.fetch,Headers:globalThis.Headers,Request:globalThis.Request,Response:globalThis.Response}:e.exports={default:r(83300).default,Headers:r(83300).Headers,Request:r(83300).Request,Response:r(83300).Response}},28951:function(e,t){(function(){var e,r,n,i,o,s,a,c;c=function(e){return[(e&255<<24)>>>24,(e&255<<16)>>>16,(65280&e)>>>8,255&e].join(".")},a=function(e){var t,n,i,o,s,a;for(t=[],i=o=0;o<=3&&0!==e.length;i=++o){if(i>0){if("."!==e[0])throw new Error("Invalid IP");e=e.substring(1)}s=(a=r(e))[0],n=a[1],e=e.substring(n),t.push(s)}if(0!==e.length)throw new Error("Invalid IP");switch(t.length){case 1:if(t[0]>4294967295)throw new Error("Invalid IP");return t[0]>>>0;case 2:if(t[0]>255||t[1]>16777215)throw new Error("Invalid IP");return(t[0]<<24|t[1])>>>0;case 3:if(t[0]>255||t[1]>255||t[2]>65535)throw new Error("Invalid IP");return(t[0]<<24|t[1]<<16|t[2])>>>0;case 4:if(t[0]>255||t[1]>255||t[2]>255||t[3]>255)throw new Error("Invalid IP");return(t[0]<<24|t[1]<<16|t[2]<<8|t[3])>>>0;default:throw new Error("Invalid IP")}},i=(n=function(e){return e.charCodeAt(0)})("0"),s=n("a"),o=n("A"),r=function(e){var t,r,a,c,u;for(c=0,t=10,r="9",a=0,e.length>1&&"0"===e[a]&&("x"===e[a+1]||"X"===e[a+1]?(a+=2,t=16):"0"<=e[a+1]&&e[a+1]<="9"&&(a++,t=8,r="7")),u=a;a>>0;else{if(16!==t)break;if("a"<=e[a]&&e[a]<="f")c=c*t+(10+n(e[a])-s)>>>0;else{if(!("A"<=e[a]&&e[a]<="F"))break;c=c*t+(10+n(e[a])-o)>>>0}}if(c>4294967295)throw new Error("too large");a++}if(a===u)throw new Error("empty octet");return[c,a]},e=function(){function e(e,t){var r,n,i;if("string"!=typeof e)throw new Error("Missing `net' parameter");if(t||(i=e.split("/",2),e=i[0],t=i[1]),t||(t=32),"string"==typeof t&&t.indexOf(".")>-1){try{this.maskLong=a(t)}catch(e){throw new Error("Invalid mask: "+t)}for(r=n=32;n>=0;r=--n)if(this.maskLong===4294967295<<32-r>>>0){this.bitmask=r;break}}else{if(!t&&0!==t)throw new Error("Invalid mask: empty");this.bitmask=parseInt(t,10),this.maskLong=0,this.bitmask>0&&(this.maskLong=4294967295<<32-this.bitmask>>>0)}try{this.netLong=(a(e)&this.maskLong)>>>0}catch(t){throw new Error("Invalid net address: "+e)}if(!(this.bitmask<=32))throw new Error("Invalid mask for ip4: "+t);this.size=Math.pow(2,32-this.bitmask),this.base=c(this.netLong),this.mask=c(this.maskLong),this.hostmask=c(~this.maskLong),this.first=this.bitmask<=30?c(this.netLong+1):this.base,this.last=this.bitmask<=30?c(this.netLong+this.size-2):c(this.netLong+this.size-1),this.broadcast=this.bitmask<=30?c(this.netLong+this.size-1):void 0}return e.prototype.contains=function(t){return"string"==typeof t&&(t.indexOf("/")>0||4!==t.split(".").length)&&(t=new e(t)),t instanceof e?this.contains(t.base)&&this.contains(t.broadcast||t.last):(a(t)&this.maskLong)>>>0==(this.netLong&this.maskLong)>>>0},e.prototype.next=function(t){return null==t&&(t=1),new e(c(this.netLong+this.size*t),this.mask)},e.prototype.forEach=function(e){var t,r,n;for(n=a(this.first),r=a(this.last),t=0;n<=r;)e(c(n),n,t),t++,n++},e.prototype.toString=function(){return this.base+"/"+this.bitmask},e}(),t.ip2long=a,t.long2ip=c,t.Netmask=e}).call(this)},53710:(e,t,r)=>{"use strict";e=r.nmd(e),Object.defineProperty(t,"__esModule",{value:!0}),t.utils=t.verify=t.sign=t.getPublicKey=t.SignResult=t.Signature=t.Point=t.ExtendedPoint=t.CURVE=void 0;const n={a:-1n,d:37095705934669439343138083508754565189542113879843219016388785533085940283555n,P:2n**255n-19n,n:2n**252n+27742317777372353535851937790883648493n,h:8n,Gx:15112221349535400772501151409588531511454012693041857206046113283949847762202n,Gy:46316835694926478169428394003475163141307993866256225615783033603165251855960n};t.CURVE=n;const i=32,o=19681161376707505956807079304988542015446066515923890162744021073123829784752n,s=25063068953384623474111414158702152701244531502492656460079210482610430750235n,a=54469307008909316920995813868745141605393597292927456921205312896311721017578n,c=1159843021668779879193775521855586647937357759715417654439879720876111806838n,u=40440834346308536858101042469323190826248399146238708352240133220865137265952n;class f{constructor(e,t,r,n){this.x=e,this.y=t,this.z=r,this.t=n}static fromAffine(e){if(!(e instanceof h))throw new TypeError("ExtendedPoint#fromAffine: expected Point");return e.equals(h.ZERO)?f.ZERO:new f(e.x,e.y,1n,_(e.x*e.y))}static toAffineBatch(e){const t=function(e,t=n.P){const r=e.length,i=new Array(r);let o=1n;for(let n=0;n=0;n--){if(0n===e[n])continue;let r=_(o*e[n],t);e[n]=_(o*i[n],t),o=r}return e}(e.map((e=>e.z)));return e.map(((e,r)=>e.toAffine(t[r])))}static normalizeZ(e){return this.toAffineBatch(e).map(this.fromAffine)}static fromRistrettoHash(e){const t=E(e.slice(0,i)),r=this.calcElligatorRistrettoMap(t),n=E(e.slice(i,64)),o=this.calcElligatorRistrettoMap(n);return r.add(o)}static calcElligatorRistrettoMap(e){const{d:t}=n,r=_(o*e*e),i=_((r+1n)*c);let a=-1n;const l=_((a-t*r)*_(r+t));let{isValid:h,value:d}=T(i,l),p=_(d*e);m(p)||(p=_(-p)),h||(d=p),h||(a=r);const y=_(a*(r-1n)*u-l),g=d*d,b=_((d+d)*l),v=_(y*s),w=_(1n-g),E=_(1n+g);return new f(_(b*E),_(w*v),_(v*E),_(b*w))}static fromRistrettoBytes(e){const{a:t,d:r}=n,o="ExtendedPoint.fromRistrettoBytes: Cannot convert bytes to Ristretto Point",s=E(e);if(!function(e,t){if(e.length!==t.length)return!1;for(let r=0;r0n;)1n&t&&(r=r.add(i)),i=i.double(),t>>=1n;return r}precomputeWindow(e){const t=256/e+1;let r=[],n=this,i=n;for(let o=0;o>=d,s>a&&(s-=u,e+=1n),0===s)o=o.add(t%2?n[r].negate():n[r]);else{const e=n[r+Math.abs(s)-1];i=i.add(s<0?e.negate():e)}}return[i,o]}multiply(e,t){if(!v(e))throw new TypeError("Point#multiply: expected number or bigint");const r=_(BigInt(e),n.n);return f.normalizeZ(this.wNAF(r,t))[0]}toAffine(e=S(this.z)){const t=_(this.x*e),r=_(this.y*e);return new h(t,r)}}t.ExtendedPoint=f,f.BASE=new f(n.Gx,n.Gy,1n,_(n.Gx*n.Gy)),f.ZERO=new f(0n,1n,1n,0n);const l=new WeakMap;class h{constructor(e,t){this.x=e,this.y=t}_setWindowSize(e){this._WINDOW_SIZE=e,l.delete(this)}static fromHex(e){const{d:t,P:r}=n,i=e instanceof Uint8Array?e:y(e);if(32!==i.length)throw new Error("Point.fromHex: expected 32 bytes");const o=i[31],s=-129&o,a=0!=(128&o),c=w(Uint8Array.from(Array.from(i.slice(0,31)).concat(s)));if(c>=r)throw new Error("Point.fromHex expects hex <= Fp");const u=_(c*c),f=_(u-1n),l=_(t*u+1n);let{isValid:d,value:p}=T(f,l);if(!d)throw new Error("Point.fromHex: invalid y coordinate");return a!==(1n===(1n&p))&&(p=_(-p)),new h(p,c)}static async fromPrivateKey(e){const r=await t.utils.sha512(k(e));return h.BASE.multiply(P(r))}toRawBytes(){const e=g(this.y),t=new Uint8Array(i);for(let r=e.length-2,n=0;n=0;r-=2,n++)t[n]=Number.parseInt(e[r]+e[r+1],16);const r=1n&this.x?128:0;return t[31]|=r,t}toHex(){return p(this.toRawBytes())}toX25519(){return _((1n+this.y)*S(1n-this.y))}equals(e){return this.x===e.x&&this.y===e.y}negate(){return new h(_(-this.x),this.y)}add(e){return f.fromAffine(this).add(f.fromAffine(e)).toAffine()}subtract(e){return this.add(e.negate())}multiply(e){return f.fromAffine(this).multiply(e,this).toAffine()}}t.Point=h,h.BASE=new h(n.Gx,n.Gy),h.ZERO=new h(0n,1n);class d{constructor(e,t){this.r=e,this.s=t}static fromHex(e){e=R(e);const t=h.fromHex(e.slice(0,32)),r=w(e.slice(32));if(!(0<(i=r)&&i0n||!!("number"==typeof e&&e>0&&Number.isSafeInteger(e))}function w(e){let t=0n;for(let r=0;r=0n?r:t+r}function S(e,t=n.P){if(0n===e||t<=0n)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=_(e,t),i=t,[o,s,a,c]=[0n,1n,1n,0n];for(;0n!==r;){const e=i/r,t=i%r,n=o-a*e,u=s-c*e;[i,r]=[r,t],[o,s]=[a,c],[a,c]=[n,u]}if(1n!==i)throw new Error("invert: does not exist");return _(o,t)}function A(e,t){const{P:r}=n;let i=e;for(;t-- >0n;)i*=i,i%=r;return i}function T(e,t){const r=_(t*t*t),i=_(r*r*t);let s=_(e*r*function(e){const{P:t}=n,r=e*e%t*e%t,i=A(r,2n)*r%t,o=A(i,1n)*e%t,s=A(o,5n)*o%t,a=A(s,10n)*s%t,c=A(a,20n)*a%t,u=A(c,40n)*c%t,f=A(u,80n)*u%t,l=A(f,80n)*u%t,h=A(l,10n)*s%t;return A(h,2n)*e%t}(e*i));const a=_(t*s*s),c=s,u=_(s*o),f=a===e,l=a===_(-e),h=a===_(-e*o);return f&&(s=c),(l||h)&&(s=u),m(s)&&(s=_(-s)),{isValid:f||l,value:s}}function I(e){return T(1n,e)}async function C(...e){const r=function(...e){if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let t=0,n=0;t2n**256n)throw new Error("Expected 32 bytes of private key");e=t.toString(16).padStart(64,"0")}if("string"==typeof e){if(64!==e.length)throw new Error("Expected 32 bytes of private key");return y(e)}if(e instanceof Uint8Array){if(32!==e.length)throw new Error("Expected 32 bytes of private key");return e}throw new TypeError("Expected valid private key")}t.Signature=d,t.SignResult=d,t.getPublicKey=async function(e){const t=await h.fromPrivateKey(e);return"string"==typeof e?t.toHex():t.toRawBytes()},t.sign=async function(e,r){const o=await t.utils.sha512(k(r)),s=P(o),a=h.BASE.multiply(s),c=R(e),u=await C((f=o,f.slice(i)),c);var f;const l=h.BASE.multiply(u),p=_(u+await C(l.toRawBytes(),a.toRawBytes(),c)*s,n.n),y=new d(l,p);return"string"==typeof e?y.toHex():y.toRawBytes()},t.verify=async function(e,t,r){t=R(t),r instanceof h||(r=h.fromHex(r)),e instanceof d||(e=d.fromHex(e));const n=await C(e.r.toRawBytes(),r.toRawBytes(),t),i=f.fromAffine(r).multiplyUnsafe(n),o=f.BASE.multiply(e.s);return f.fromAffine(e.r).add(i).subtract(o).multiplyUnsafe(8n).equals(f.ZERO)},h.BASE._setWindowSize(8);const B=(()=>{const t="object"==typeof self&&"crypto"in self?self.crypto:void 0,r="function"==typeof e.require&&e.require.bind(e);return{node:r&&!t?r("crypto"):void 0,web:t}})();t.utils={TORSION_SUBGROUP:["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"],randomBytes:(e=32)=>{if(B.web)return B.web.getRandomValues(new Uint8Array(e));if(B.node){const{randomBytes:t}=B.node;return new Uint8Array(t(e).buffer)}throw new Error("The environment doesn't have randomBytes function")},randomPrivateKey:()=>{let e=1024;for(;e--;){const e=t.utils.randomBytes(32),r=w(e);if(r>1n&&r{if(B.web){const t=await B.web.subtle.digest("SHA-512",e.buffer);return new Uint8Array(t)}if(B.node)return Uint8Array.from(B.node.createHash("sha512").update(e).digest());throw new Error("The environment doesn't have sha512 function")},precompute(e=8,t=h.BASE){const r=t.equals(h.BASE)?t:new h(t.x,t.y);return r._setWindowSize(e),r.multiply(1n),r}}},1795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.utils=t.schnorr=t.verify=t.signSync=t.sign=t.getSharedSecret=t.recoverPublicKey=t.getPublicKey=t.SignResult=t.Signature=t.Point=t.CURVE=void 0;const n={a:0n,b:7n,P:2n**256n-2n**32n-977n,n:2n**256n-432420386565659656852420866394968145599n,h:1n,Gx:55066263022277343669578718895168534326250603453777594175500187360389116729240n,Gy:32670510020758816978083085130507043184471273380659243275938904335757337482424n,beta:0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501een};function i(e){const{a:t,b:r}=n;return _(e**3n+t*e+r)}t.CURVE=n;const o=0n===n.a;class s{constructor(e,t,r){this.x=e,this.y=t,this.z=r}static fromAffine(e){if(!(e instanceof c))throw new TypeError("JacobianPoint#fromAffine: expected Point");return new s(e.x,e.y,1n)}static toAffineBatch(e){const t=function(e,t=n.P){const r=e.length,i=new Array(r);let o=1n;for(let n=0;n=0;n--){if(0n===e[n])continue;const r=_(o*e[n],t);e[n]=_(o*i[n],t),o=r}return e}(e.map((e=>e.z)));return e.map(((e,r)=>e.toAffine(t[r])))}static normalizeZ(e){return s.toAffineBatch(e).map(s.fromAffine)}equals(e){const t=this,r=e,n=_(t.z*t.z),i=_(t.z*n),o=_(r.z*r.z),s=_(r.z*o);return _(t.x*o)===_(n*r.x)&&_(t.y*s)===_(i*r.y)}negate(){return new s(this.x,_(-this.y),this.z)}double(){const e=this.x,t=this.y,r=this.z,n=_(e**2n),i=_(t**2n),o=_(i**2n),a=_(2n*(_(_((e+i)**2n))-n-o)),c=_(3n*n),u=_(c**2n),f=_(u-2n*a),l=_(c*(a-f)-8n*o),h=_(2n*t*r);return new s(f,l,h)}add(e){if(!(e instanceof s))throw new TypeError("JacobianPoint#add: expected JacobianPoint");const t=this.x,r=this.y,n=this.z,i=e.x,o=e.y,a=e.z;if(0n===i||0n===o)return this;if(0n===t||0n===r)return e;const c=_(n**2n),u=_(a**2n),f=_(t*u),l=_(i*c),h=_(r*a*u),d=_(_(o*n)*c),p=_(l-f),y=_(d-h);if(0n===p)return 0n===y?this.double():s.ZERO;const g=_(p**2n),b=_(p*g),m=_(f*g),v=_(y**2n-b-2n*m),w=_(y*(m-v)-h*b),E=_(n*a*p);return new s(v,w,E)}subtract(e){return this.add(e.negate())}multiplyUnsafe(e){if(!E(e))throw new TypeError("Point#multiply: expected valid scalar");let t=_(BigInt(e),n.n);if(!o){let e=s.ZERO,r=this;for(;t>0n;)1n&t&&(e=e.add(r)),r=r.double(),t>>=1n;return e}let[r,i,a,c]=C(t),u=s.ZERO,f=s.ZERO,l=this;for(;i>0n||c>0n;)1n&i&&(u=u.add(l)),1n&c&&(f=f.add(l)),l=l.double(),i>>=1n,c>>=1n;return r&&(u=u.negate()),a&&(f=f.negate()),f=new s(_(f.x*n.beta),f.y,f.z),u.add(f)}precomputeWindow(e){const t=o?128/e+1:256/e+1;let r=[],n=this,i=n;for(let o=0;o>=p,o>l&&(o-=d,e+=1n),0===o)u=u.add(t%2?n[r].negate():n[r]);else{const e=n[r+Math.abs(o)-1];i=i.add(o<0?e.negate():e)}}return[i,u]}multiply(e,t){if(!E(e))throw new TypeError("Point#multiply: expected valid scalar");let r,i,a=_(BigInt(e),n.n);if(o){const[e,o,c,u]=C(a);let f,l,h,d;[f,h]=this.wNAF(o,t),[l,d]=this.wNAF(u,t),e&&(f=f.negate()),c&&(l=l.negate()),l=new s(_(l.x*n.beta),l.y,l.z),[r,i]=[f.add(l),h.add(d)]}else[r,i]=this.wNAF(a,t);return s.normalizeZ([r,i])[0]}toAffine(e=A(this.z)){const t=e**2n,r=_(this.x*t),n=_(this.y*t*e);return new c(r,n)}}s.BASE=new s(n.Gx,n.Gy,1n),s.ZERO=new s(0n,1n,0n);const a=new WeakMap;class c{constructor(e,t){this.x=e,this.y=t}_setWindowSize(e){this._WINDOW_SIZE=e,a.delete(this)}static fromCompressedHex(e){const t=32===e.length,r=v(t?e:e.slice(1));let o=function(e){const{P:t}=n,r=e*e*e%t,i=r*r*e%t,o=S(i,3n)*i%t,s=S(o,3n)*i%t,a=S(s,2n)*r%t,c=S(a,11n)*a%t,u=S(c,22n)*c%t,f=S(u,44n)*u%t,l=S(f,88n)*f%t,h=S(l,44n)*u%t,d=S(h,3n)*i%t,p=S(d,23n)*c%t,y=S(p,6n)*r%t;return S(y,2n)}(i(r));const s=1n===(1n&o);t?s&&(o=_(-o)):1==(1&e[0])!==s&&(o=_(-o));const a=new c(r,o);return a.assertValidity(),a}static fromUncompressedHex(e){const t=v(e.slice(1,33)),r=v(e.slice(33)),n=new c(t,r);return n.assertValidity(),n}static fromHex(e){const t=m(e),r=t[0];if(32===t.length||33===t.length&&(2===r||3===r))return this.fromCompressedHex(t);if(65===t.length&&4===r)return this.fromUncompressedHex(t);throw new Error(`Point.fromHex: received invalid point. Expected 32-33 compressed bytes or 65 uncompressed bytes, not ${t.length}`)}static fromPrivateKey(e){return c.BASE.multiply(B(e))}static fromSignature(e,t,r){let i=e instanceof Uint8Array?v(e):g(e);const o=M(t),{r:a,s:u}=o;if(0!==r&&1!==r)throw new Error("Cannot recover signature: invalid yParity bit");const f=2+(1&r),l=c.fromHex(`0${f}${d(a)}`),h=s.fromAffine(l).multiplyUnsafe(u),p=s.BASE.multiply(i),y=A(a,n.n),b=h.subtract(p).multiplyUnsafe(y).toAffine();return b.assertValidity(),b}toRawBytes(e=!1){return b(this.toHex(e))}toHex(e=!1){const t=d(this.x);return e?`${1n&this.y?"03":"02"}${t}`:`04${t}${d(this.y)}`}toHexX(){return this.toHex(!0).slice(2)}toRawX(){return this.toRawBytes(!0).slice(1)}assertValidity(){const e="Point is not on elliptic curve",{P:t}=n,{x:r,y:o}=this;if(0n===r||0n===o||r>=t||o>=t)throw new Error(e);if((_(o*o)-i(r))%t!==0n)throw new Error(e)}equals(e){return this.x===e.x&&this.y===e.y}negate(){return new c(this.x,_(-this.y))}double(){return s.fromAffine(this).double().toAffine()}add(e){return s.fromAffine(this).add(s.fromAffine(e)).toAffine()}subtract(e){return this.add(e.negate())}multiply(e){return s.fromAffine(this).multiply(e,this).toAffine()}}function u(e){return Number.parseInt(e[0],16)>=8?"00"+e:e}t.Point=c,c.BASE=new c(n.Gx,n.Gy),c.ZERO=new c(0n,0n);class f{constructor(e,t){this.r=e,this.s=t}static fromCompact(e){if("string"!=typeof e&&!(e instanceof Uint8Array))throw new TypeError("Signature.fromCompact: Expected string or Uint8Array");const t=e instanceof Uint8Array?h(e):e;if(128!==t.length)throw new Error("Signature.fromCompact: Expected 64-byte hex");const r=new f(g(t.slice(0,64)),g(t.slice(64,128)));return r.assertValidity(),r}static fromDER(e){const t="Signature.fromDER";if("string"!=typeof e&&!(e instanceof Uint8Array))throw new TypeError(`${t}: Expected string or Uint8Array`);const r=e instanceof Uint8Array?h(e):e,n=w(r.slice(2,4));if("30"!==r.slice(0,2)||n!==r.length-4||"02"!==r.slice(4,6))throw new Error(`${t}: Invalid signature ${r}`);const i=w(r.slice(6,8)),o=8+i,s=r.slice(8,o);if(s.startsWith("00")&&w(s.slice(2,4))<=127)throw new Error(`${t}: Invalid r with trailing length`);const a=g(s);if("02"!==r.slice(o,o+2))throw new Error(`${t}: Invalid r-s separator`);const c=w(r.slice(o+2,o+4)),u=n-c-i-10;if(u>0||-4===u)throw new Error(`${t}: Invalid total length`);if(c>n-i-4)throw new Error(`${t}: Invalid s`);const l=o+4,d=r.slice(l,l+c);if(d.startsWith("00")&&w(d.slice(2,4))<=127)throw new Error(`${t}: Invalid s with trailing length`);const p=g(d),y=new f(a,p);return y.assertValidity(),y}static fromHex(e){return this.fromDER(e)}assertValidity(){const{r:e,s:t}=this;if(!R(e))throw new Error("Invalid Signature: r must be 0 < r < n");if(!R(t))throw new Error("Invalid Signature: s must be 0 < s < n")}toDERRawBytes(e=!1){return b(this.toDERHex(e))}toDERHex(e=!1){const t=u(y(this.s));if(e)return t;const r=u(y(this.r)),n=y(r.length/2),i=y(t.length/2);return`30${y(r.length/2+t.length/2+4)}02${n}${r}02${i}${t}`}toRawBytes(){return this.toDERRawBytes()}toHex(){return this.toDERHex()}toCompactRawBytes(){return b(this.toCompactHex())}toCompactHex(){return d(this.r)+d(this.s)}}function l(...e){if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let t=0,n=0;t0n||!!("number"==typeof e&&e>0&&Number.isSafeInteger(e))}function _(e,t=n.P){const r=e%t;return r>=0?r:t+r}function S(e,t){const{P:r}=n;let i=e;for(;t-- >0n;)i*=i,i%=r;return i}function A(e,t=n.P){if(0n===e||t<=0n)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let r=_(e,t),i=t,[o,s,a,c]=[0n,1n,1n,0n];for(;0n!==r;){const e=i/r,t=i%r,n=o-a*e,u=s-c*e;[i,r]=[r,t],[o,s]=[a,c],[a,c]=[n,u]}if(1n!==i)throw new Error("invert: does not exist");return _(o,t)}t.Signature=f,t.SignResult=f;const T=(e,t)=>(e+t/2n)/t,I=2n**128n;function C(e){const{n:t}=n,r=0x3086d221a7d46bcde86c90e49284eb15n,i=-0xe4437ed6010e88286f547fa90abfe4c3n,o=r,s=T(o*e,t),a=T(-i*e,t);let c=_(e-s*r-0x114ca50f7a8e2f3f657c1108d9d44cfd8n*a,t),u=_(-s*i-a*o,t);const f=c>I,l=u>I;if(f&&(c=t-c),l&&(u=t-u),c>I||u>I)throw new Error("splitScalarEndo: Endomorphism failed");return[f,c,l,u]}function P(e,t){if(null==e)throw new Error(`sign: expected valid msgHash, not "${e}"`);const r=p("string"==typeof e?g(e):v(e));return[r,v(r),p(t),new Uint8Array(32).fill(1),new Uint8Array(32).fill(0),Uint8Array.from([0]),Uint8Array.from([1])]}function R(e){return 00)t=BigInt(e);else if("string"==typeof e){if(64!==e.length)throw new Error("Expected 32 bytes of private key");t=g(e)}else{if(!(e instanceof Uint8Array))throw new TypeError("Expected valid private key");if(32!==e.length)throw new Error("Expected 32 bytes of private key");t=v(e)}if(!R(t))throw new Error("Expected private key: 0 < key < n");return t}function x(e){return e instanceof c?(e.assertValidity(),e):c.fromHex(e)}function M(e){return e instanceof f?(e.assertValidity(),e):f.fromDER(e)}function O(e){const t=e instanceof Uint8Array,r="string"==typeof e,n=(t||r)&&e.length;return t?33===n||65===n:r?66===n||130===n:e instanceof c}function N(e,t,r=!1){const[i,o,s]=e;let{canonical:a,der:c,recovered:u}=t,l=(i.x===o?0:2)|Number(1n&i.y),h=s;s>n.n>>1n&&a&&(h=n.n-s,l^=1);const d=new f(o,h);d.assertValidity();const p=!1===c?d.toCompactHex():d.toDERHex(),y=r?p:b(p);return u?[y,l]:y}async function L(e,...r){const n=new Uint8Array(e.split("").map((e=>e.charCodeAt(0)))),i=await t.utils.sha256(n);return v(await t.utils.sha256(l(i,i,...r)))}async function D(e,t,r){const i=p(e);return _(await L("BIP0340/challenge",i,t.toRawX(),r),n.n)}function K(e){return 0n===_(e.y,2n)}t.getPublicKey=function(e,t=!1){const r=c.fromPrivateKey(e);return"string"==typeof e?r.toHex(t):r.toRawBytes(t)},t.recoverPublicKey=function(e,t,r){const n=c.fromSignature(e,t,r);return"string"==typeof e?n.toHex():n.toRawBytes()},t.getSharedSecret=function(e,t,r=!1){if(O(e))throw new TypeError("getSharedSecret: first arg must be private key");if(!O(t))throw new TypeError("getSharedSecret: second arg must be public key");const n=x(t);n.assertValidity();const i=n.multiply(B(e));return"string"==typeof e?i.toHex(r):i.toRawBytes(r)},t.sign=async function(e,r,n={}){return N(await async function(e,r){const n=B(r);let[i,o,s,a,c,u,f]=P(e,n);const l=t.utils.hmacSha256;c=await l(c,a,u,s,i),a=await l(c,a),c=await l(c,a,f,s,i),a=await l(c,a);for(let e=0;e<1e3;e++){a=await l(c,a);let e=k(a,o,n);if(e)return e;c=await l(c,a,u),a=await l(c,a)}throw new TypeError("secp256k1: Tried 1,000 k values for sign(), all were invalid")}(e,r),n,"string"==typeof e)},t.signSync=function(e,r,n={}){return N(function(e,r){const n=B(r);let[i,o,s,a,c,u,f]=P(e,n);const l=t.utils.hmacSha256Sync;if(!l)throw new Error("utils.hmacSha256Sync is undefined, you need to set it");if(c=l(c,a,u,s,i),c instanceof Promise)throw new Error("To use sync sign(), ensure utils.hmacSha256 is sync");a=l(c,a),c=l(c,a,f,s,i),a=l(c,a);for(let e=0;e<1e3;e++){a=l(c,a);let e=k(a,o,n);if(e)return e;c=l(c,a,u),a=l(c,a)}throw new TypeError("secp256k1: Tried 1,000 k values for sign(), all were invalid")}(e,r),n,"string"==typeof e)},t.verify=function(e,t,r){const{n:i}=n;let o;try{o=M(e)}catch(e){return!1}const{r:a,s:c}=o,u=function(e){"string"!=typeof e&&(e=h(e));let t=g(e||"0");const r=e.length/2*8-256;return r>0&&(t>>=BigInt(r)),t>=n.n&&(t-=n.n),t}(t);if(0n===u)return!1;const f=s.fromAffine(x(r)),l=A(c,i),d=_(u*l,i),p=_(a*l,i),y=s.BASE.multiply(d),b=f.multiplyUnsafe(p);return _(y.add(b).toAffine().x,i)===a};class U{constructor(e,t){if(this.r=e,this.s=t,e<=0n||t<=0n||e>=n.P||t>=n.n)throw new Error("Invalid signature")}static fromHex(e){const t=m(e);if(64!==t.length)throw new TypeError(`SchnorrSignature.fromHex: expected 64 bytes, not ${t.length}`);const r=v(t.slice(0,32)),n=v(t.slice(32));return new U(r,n)}toHex(){return d(this.r)+d(this.s)}toRawBytes(){return b(this.toHex())}}async function j(e,t,r){const n=e instanceof U?e:U.fromHex(e),i="string"==typeof t?b(t):t,o=x(r),s=await D(n.r,o,i),a=c.fromPrivateKey(n.s),u=o.multiply(s),f=a.subtract(u);return!(f.equals(c.BASE)||!K(f)||f.x!==n.r)}t.schnorr={Signature:U,getPublicKey:function(e){const t=c.fromPrivateKey(e);return"string"==typeof e?t.toHexX():t.toRawX()},sign:async function(e,r,i=t.utils.randomBytes()){if(null==e)throw new TypeError(`sign: Expected valid message, not "${e}"`);r||(r=0n);const{n:o}=n,s=m(e),a=B(r),u=m(i);if(32!==u.length)throw new TypeError("sign: Expected 32 bytes of aux randomness");const f=c.fromPrivateKey(a),l=K(f)?a:o-a,h=l^await L("BIP0340/aux",u),d=_(await L("BIP0340/nonce",p(h),f.toRawX(),s),o);if(0n===d)throw new Error("sign: Creation of signature failed. k is zero");const y=c.fromPrivateKey(d),g=K(y)?d:o-d,b=await D(y.x,f,s),v=new U(y.x,_(g+b*l,o));if(!await j(v.toRawBytes(),s,f.toRawX()))throw new Error("sign: Invalid signature produced");return"string"==typeof e?v.toHex():v.toRawBytes()},verify:j},c.BASE._setWindowSize(8);const V=(()=>{const e="object"==typeof self&&"crypto"in self?self.crypto:void 0;return{node:e?void 0:r(39370),web:e}})();t.utils={isValidPrivateKey(e){try{return B(e),!0}catch(e){return!1}},randomBytes:(e=32)=>{if(V.web)return V.web.getRandomValues(new Uint8Array(e));if(V.node){const{randomBytes:t}=V.node;return new Uint8Array(t(e).buffer)}throw new Error("The environment doesn't have randomBytes function")},randomPrivateKey:()=>{let e=8;for(;e--;){const e=t.utils.randomBytes(32),r=v(e);if(R(r)&&1n!==r)return e}throw new Error("Valid private key was not found in 8 iterations. PRNG is broken")},sha256:async e=>{if(V.web){const t=await V.web.subtle.digest("SHA-256",e.buffer);return new Uint8Array(t)}if(V.node){const{createHash:t}=V.node;return Uint8Array.from(t("sha256").update(e).digest())}throw new Error("The environment doesn't have sha256 function")},hmacSha256:async(e,...t)=>{if(V.web){const r=await V.web.subtle.importKey("raw",e,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]),n=l(...t),i=await V.web.subtle.sign("HMAC",r,n);return new Uint8Array(i)}if(V.node){const{createHmac:r}=V.node,n=r("sha256",e);for(let e of t)n.update(e);return Uint8Array.from(n.digest())}throw new Error("The environment doesn't have hmac-sha256 function")},sha256Sync:void 0,hmacSha256Sync:void 0,precompute(e=8,t=c.BASE){const r=t===c.BASE?t:new c(t.x,t.y);return r._setWindowSize(e),r.multiply(3n),r}}},83300:(e,t)=>{"use strict";var r=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if(void 0!==r)return r;throw new Error("unable to locate global object")}();e.exports=t=r.fetch,r.fetch&&(t.default=r.fetch.bind(r)),t.Headers=r.Headers,t.Request=r.Request,t.Response=r.Response},8925:(e,t,r)=>{var n=r(3832);function i(e,t){n.cipher.registerAlgorithm(e,(function(){return new n.aes.Algorithm(e,t)}))}r(85649),r(61967),r(97116),e.exports=n.aes=n.aes||{},n.aes.startEncrypting=function(e,t,r,n){var i=p({key:e,output:r,decrypt:!1,mode:n});return i.start(t),i},n.aes.createEncryptionCipher=function(e,t){return p({key:e,output:null,decrypt:!1,mode:t})},n.aes.startDecrypting=function(e,t,r,n){var i=p({key:e,output:r,decrypt:!0,mode:n});return i.start(t),i},n.aes.createDecryptionCipher=function(e,t){return p({key:e,output:null,decrypt:!0,mode:t})},n.aes.Algorithm=function(e,t){f||l();var r=this;r.name=e,r.mode=new t({blockSize:16,cipher:{encrypt:function(e,t){return d(r._w,e,t,!1)},decrypt:function(e,t){return d(r._w,e,t,!0)}}}),r._init=!1},n.aes.Algorithm.prototype.initialize=function(e){if(!this._init){var t,r=e.key;if("string"!=typeof r||16!==r.length&&24!==r.length&&32!==r.length){if(n.util.isArray(r)&&(16===r.length||24===r.length||32===r.length)){t=r,r=n.util.createBuffer();for(var i=0;i>>=2,i=0;i>8^255&l^99,o[y]=l,s[l]=y,d=(h=e[l])<<24^l<<16^l<<8^l^h,p=((r=e[y])^(n=e[r])^(i=e[n]))<<24^(y^i)<<16^(y^n^i)<<8^y^r^i;for(var b=0;b<4;++b)c[b][y]=d,u[b][l]=p,d=d<<24|d>>>8,p=p<<24|p>>>8;0===y?y=g=1:(y=r^e[e[e[r^i]]],g^=e[e[g]])}}function h(e,t){for(var r,n=e.slice(0),i=1,s=n.length,c=4*(s+6+1),f=s;f>>16&255]<<24^o[r>>>8&255]<<16^o[255&r]<<8^o[r>>>24]^a[i]<<24,i++):s>6&&f%s==4&&(r=o[r>>>24]<<24^o[r>>>16&255]<<16^o[r>>>8&255]<<8^o[255&r]),n[f]=n[f-s]^r;if(t){for(var l,h=u[0],d=u[1],p=u[2],y=u[3],g=n.slice(0),b=(f=0,(c=n.length)-4);f>>24]]^d[o[l>>>16&255]]^p[o[l>>>8&255]]^y[o[255&l]];n=g}return n}function d(e,t,r,n){var i,a,f,l,h,d,p,y,g,b,m,v,w=e.length/4-1;n?(i=u[0],a=u[1],f=u[2],l=u[3],h=s):(i=c[0],a=c[1],f=c[2],l=c[3],h=o),d=t[0]^e[0],p=t[n?3:1]^e[1],y=t[2]^e[2],g=t[n?1:3]^e[3];for(var E=3,_=1;_>>24]^a[p>>>16&255]^f[y>>>8&255]^l[255&g]^e[++E],m=i[p>>>24]^a[y>>>16&255]^f[g>>>8&255]^l[255&d]^e[++E],v=i[y>>>24]^a[g>>>16&255]^f[d>>>8&255]^l[255&p]^e[++E],g=i[g>>>24]^a[d>>>16&255]^f[p>>>8&255]^l[255&y]^e[++E],d=b,p=m,y=v;r[0]=h[d>>>24]<<24^h[p>>>16&255]<<16^h[y>>>8&255]<<8^h[255&g]^e[++E],r[n?3:1]=h[p>>>24]<<24^h[y>>>16&255]<<16^h[g>>>8&255]<<8^h[255&d]^e[++E],r[2]=h[y>>>24]<<24^h[g>>>16&255]<<16^h[d>>>8&255]<<8^h[255&p]^e[++E],r[n?1:3]=h[g>>>24]<<24^h[d>>>16&255]<<16^h[p>>>8&255]<<8^h[255&y]^e[++E]}function p(e){var t,r="AES-"+((e=e||{}).mode||"CBC").toUpperCase(),i=(t=e.decrypt?n.cipher.createDecipher(r,e.key):n.cipher.createCipher(r,e.key)).start;return t.start=function(e,r){var o=null;r instanceof n.util.ByteBuffer&&(o=r,r={}),(r=r||{}).output=o,r.iv=e,i.call(t,r)},t}},59205:(e,t,r)=>{var n=r(3832);r(3068);var i=n.asn1;t.privateKeyValidator={name:"PrivateKeyInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},t.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{tagClass:i.Class.UNIVERSAL,type:i.Type.BITSTRING,constructed:!1,composed:!0,captureBitStringValue:"ed25519PublicKey"}]}},3068:(e,t,r)=>{var n=r(3832);r(97116),r(66270);var i=e.exports=n.asn1=n.asn1||{};function o(e,t,r){if(r>t){var n=new Error("Too few bytes to parse DER.");throw n.available=e.length(),n.remaining=t,n.requested=r,n}}function s(e,t,r,n){var a;o(e,t,2);var c=e.getByte();t--;var u=192&c,f=31&c;a=e.length();var l,h,d=function(e,t){var r=e.getByte();if(t--,128!==r){var n;if(128&r){var i=127&r;o(e,t,i),n=e.getInt(i<<3)}else n=r;if(n<0)throw new Error("Negative length: "+n);return n}}(e,t);if(t-=a-e.length(),void 0!==d&&d>t){if(n.strict){var p=new Error("Too few bytes to read ASN.1 value.");throw p.available=e.length(),p.remaining=t,p.requested=d,p}d=t}var y=32==(32&c);if(y)if(l=[],void 0===d)for(;;){if(o(e,t,2),e.bytes(2)===String.fromCharCode(0,0)){e.getBytes(2),t-=2;break}a=e.length(),l.push(s(e,t,r+1,n)),t-=a-e.length()}else for(;d>0;)a=e.length(),l.push(s(e,d,r+1,n)),t-=a-e.length(),d-=a-e.length();if(void 0===l&&u===i.Class.UNIVERSAL&&f===i.Type.BITSTRING&&(h=e.bytes(d)),void 0===l&&n.decodeBitStrings&&u===i.Class.UNIVERSAL&&f===i.Type.BITSTRING&&d>1){var g=e.read,b=t,m=0;if(f===i.Type.BITSTRING&&(o(e,t,1),m=e.getByte(),t--),0===m)try{a=e.length();var v=s(e,t,r+1,{verbose:n.verbose,strict:!0,decodeBitStrings:!0}),w=a-e.length();t-=w,f==i.Type.BITSTRING&&w++;var E=v.tagClass;w!==d||E!==i.Class.UNIVERSAL&&E!==i.Class.CONTEXT_SPECIFIC||(l=[v])}catch(e){}void 0===l&&(e.read=g,t=b)}if(void 0===l){if(void 0===d){if(n.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");d=t}if(f===i.Type.BMPSTRING)for(l="";d>0;d-=2)o(e,t,2),l+=String.fromCharCode(e.getInt16()),t-=2;else l=e.getBytes(d)}var _=void 0===h?null:{bitStringContents:h};return i.create(u,f,y,l,_)}i.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192},i.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30},i.create=function(e,t,r,o,s){if(n.util.isArray(o)){for(var a=[],c=0;c1&&(0===e.value.charCodeAt(0)&&0==(128&e.value.charCodeAt(1))||255===e.value.charCodeAt(0)&&128==(128&e.value.charCodeAt(1)))?o.putBytes(e.value.substr(1)):o.putBytes(e.value);if(t.putByte(r),o.length()<=127)t.putByte(127&o.length());else{var c=o.length(),u="";do{u+=String.fromCharCode(255&c),c>>>=8}while(c>0);for(t.putByte(128|u.length),a=u.length-1;a>=0;--a)t.putByte(u.charCodeAt(a))}return t.putBuffer(o),t},i.oidToDer=function(e){var t,r,i,o,s=e.split("."),a=n.util.createBuffer();a.putByte(40*parseInt(s[0],10)+parseInt(s[1],10));for(var c=2;c>>=7,t||(o|=128),r.push(o),t=!1}while(i>0);for(var u=r.length-1;u>=0;--u)a.putByte(r[u])}return a},i.derToOid=function(e){var t;"string"==typeof e&&(e=n.util.createBuffer(e));var r=e.getByte();t=Math.floor(r/40)+"."+r%40;for(var i=0;e.length()>0;)i<<=7,128&(r=e.getByte())?i+=127&r:(t+="."+(i+r),i=0);return t},i.utcTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,2),10);r=r>=50?1900+r:2e3+r;var n=parseInt(e.substr(2,2),10)-1,i=parseInt(e.substr(4,2),10),o=parseInt(e.substr(6,2),10),s=parseInt(e.substr(8,2),10),a=0;if(e.length>11){var c=e.charAt(10),u=10;"+"!==c&&"-"!==c&&(a=parseInt(e.substr(10,2),10),u+=2)}if(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,0),u&&("+"===(c=e.charAt(u))||"-"===c)){var f=60*parseInt(e.substr(u+1,2),10)+parseInt(e.substr(u+4,2),10);f*=6e4,"+"===c?t.setTime(+t-f):t.setTime(+t+f)}return t},i.generalizedTimeToDate=function(e){var t=new Date,r=parseInt(e.substr(0,4),10),n=parseInt(e.substr(4,2),10)-1,i=parseInt(e.substr(6,2),10),o=parseInt(e.substr(8,2),10),s=parseInt(e.substr(10,2),10),a=parseInt(e.substr(12,2),10),c=0,u=0,f=!1;"Z"===e.charAt(e.length-1)&&(f=!0);var l=e.length-5,h=e.charAt(l);return"+"!==h&&"-"!==h||(u=60*parseInt(e.substr(l+1,2),10)+parseInt(e.substr(l+4,2),10),u*=6e4,"+"===h&&(u*=-1),f=!0),"."===e.charAt(14)&&(c=1e3*parseFloat(e.substr(14),10)),f?(t.setUTCFullYear(r,n,i),t.setUTCHours(o,s,a,c),t.setTime(+t+u)):(t.setFullYear(r,n,i),t.setHours(o,s,a,c)),t},i.dateToUtcTime=function(e){if("string"==typeof e)return e;var t="",r=[];r.push((""+e.getUTCFullYear()).substr(2)),r.push(""+(e.getUTCMonth()+1)),r.push(""+e.getUTCDate()),r.push(""+e.getUTCHours()),r.push(""+e.getUTCMinutes()),r.push(""+e.getUTCSeconds());for(var n=0;n=-128&&e<128)return t.putSignedInt(e,8);if(e>=-32768&&e<32768)return t.putSignedInt(e,16);if(e>=-8388608&&e<8388608)return t.putSignedInt(e,24);if(e>=-2147483648&&e<2147483648)return t.putSignedInt(e,32);var r=new Error("Integer too large; max is 32-bits.");throw r.integer=e,r},i.derToInteger=function(e){"string"==typeof e&&(e=n.util.createBuffer(e));var t=8*e.length();if(t>32)throw new Error("Integer too large; max is 32-bits.");return e.getSignedInt(t)},i.validate=function(e,t,r,o){var s=!1;if(e.tagClass!==t.tagClass&&void 0!==t.tagClass||e.type!==t.type&&void 0!==t.type)o&&(e.tagClass!==t.tagClass&&o.push("["+t.name+'] Expected tag class "'+t.tagClass+'", got "'+e.tagClass+'"'),e.type!==t.type&&o.push("["+t.name+'] Expected type "'+t.type+'", got "'+e.type+'"'));else if(e.constructed===t.constructed||void 0===t.constructed){if(s=!0,t.value&&n.util.isArray(t.value))for(var a=0,c=0;s&&c0&&(o+="\n");for(var s="",c=0;c1?o+="0x"+n.util.bytesToHex(e.value.slice(1)):o+="(none)",e.value.length>0){var h=e.value.charCodeAt(0);1==h?o+=" (1 unused bit shown)":h>1&&(o+=" ("+h+" unused bits shown)")}}else e.type===i.Type.OCTETSTRING?(a.test(e.value)||(o+="("+e.value+") "),o+="0x"+n.util.bytesToHex(e.value)):e.type===i.Type.UTF8?o+=n.util.decodeUtf8(e.value):e.type===i.Type.PRINTABLESTRING||e.type===i.Type.IA5String?o+=e.value:a.test(e.value)?o+="0x"+n.util.bytesToHex(e.value):0===e.value.length?o+="[null]":o+=e.value}return o}},78807:e=>{var t={};e.exports=t;var r={};t.encode=function(e,t,r){if("string"!=typeof t)throw new TypeError('"alphabet" must be a string.');if(void 0!==r&&"number"!=typeof r)throw new TypeError('"maxline" must be a number.');var n="";if(e instanceof Uint8Array){var i=0,o=t.length,s=t.charAt(0),a=[0];for(i=0;i0;)a.push(u%o),u=u/o|0}for(i=0;0===e[i]&&i=0;--i)n+=t[a[i]]}else n=function(e,t){var r=0,n=t.length,i=t.charAt(0),o=[0];for(r=0;r0;)o.push(a%n),a=a/n|0}var c="";for(r=0;0===e.at(r)&&r=0;--r)c+=t[o[r]];return c}(e,t);if(r){var f=new RegExp(".{1,"+r+"}","g");n=n.match(f).join("\r\n")}return n},t.decode=function(e,t){if("string"!=typeof e)throw new TypeError('"input" must be a string.');if("string"!=typeof t)throw new TypeError('"alphabet" must be a string.');var n=r[t];if(!n){n=r[t]=[];for(var i=0;i>=8;for(;f>0;)a.push(255&f),f>>=8}for(var l=0;e[l]===s&&l{var n=r(3832);r(97116),e.exports=n.cipher=n.cipher||{},n.cipher.algorithms=n.cipher.algorithms||{},n.cipher.createCipher=function(e,t){var r=e;if("string"==typeof r&&(r=n.cipher.getAlgorithm(r))&&(r=r()),!r)throw new Error("Unsupported algorithm: "+e);return new n.cipher.BlockCipher({algorithm:r,key:t,decrypt:!1})},n.cipher.createDecipher=function(e,t){var r=e;if("string"==typeof r&&(r=n.cipher.getAlgorithm(r))&&(r=r()),!r)throw new Error("Unsupported algorithm: "+e);return new n.cipher.BlockCipher({algorithm:r,key:t,decrypt:!0})},n.cipher.registerAlgorithm=function(e,t){e=e.toUpperCase(),n.cipher.algorithms[e]=t},n.cipher.getAlgorithm=function(e){return(e=e.toUpperCase())in n.cipher.algorithms?n.cipher.algorithms[e]:null};var i=n.cipher.BlockCipher=function(e){this.algorithm=e.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=e.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=e.decrypt,this.algorithm.initialize(e)};i.prototype.start=function(e){e=e||{};var t={};for(var r in e)t[r]=e[r];t.decrypt=this._decrypt,this._finish=!1,this._input=n.util.createBuffer(),this.output=e.output||n.util.createBuffer(),this.mode.start(t)},i.prototype.update=function(e){for(e&&this._input.putBuffer(e);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()},i.prototype.finish=function(e){!e||"ECB"!==this.mode.name&&"CBC"!==this.mode.name||(this.mode.pad=function(t){return e(this.blockSize,t,!1)},this.mode.unpad=function(t){return e(this.blockSize,t,!0)});var t={};return t.decrypt=this._decrypt,t.overflow=this._input.length()%this.blockSize,!(!this._decrypt&&this.mode.pad&&!this.mode.pad(this._input,t)||(this._finish=!0,this.update(),this._decrypt&&this.mode.unpad&&!this.mode.unpad(this.output,t)||this.mode.afterFinish&&!this.mode.afterFinish(this.output,t)))}},61967:(e,t,r)=>{var n=r(3832);r(97116),n.cipher=n.cipher||{};var i=e.exports=n.cipher.modes=n.cipher.modes||{};function o(e,t){if("string"==typeof e&&(e=n.util.createBuffer(e)),n.util.isArray(e)&&e.length>4){var r=e;e=n.util.createBuffer();for(var i=0;i0))return!0;for(var n=0;n0))return!0;for(var n=0;n0)return!1;var r=e.length(),n=e.at(r-1);return!(n>this.blockSize<<2||(e.truncate(n),0))},i.cbc=function(e){e=e||{},this.name="CBC",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)},i.cbc.prototype.start=function(e){if(null===e.iv){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else{if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=o(e.iv,this.blockSize),this._prev=this._iv.slice(0)}},i.cbc.prototype.encrypt=function(e,t,r){if(e.length()0))return!0;for(var n=0;n0))return!0;for(var n=0;n0)return!1;var r=e.length(),n=e.at(r-1);return!(n>this.blockSize<<2||(e.truncate(n),0))},i.cfb=function(e){e=e||{},this.name="CFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=n.util.createBuffer(),this._partialBytes=0},i.cfb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=o(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},i.cfb.prototype.encrypt=function(e,t,r){var n=e.length();if(0===n)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&n>=this.blockSize)for(var i=0;i0&&(o=this.blockSize-o),this._partialOutput.clear(),i=0;i0)e.read-=this.blockSize;else for(i=0;i0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}},i.cfb.prototype.decrypt=function(e,t,r){var n=e.length();if(0===n)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&n>=this.blockSize)for(var i=0;i0&&(o=this.blockSize-o),this._partialOutput.clear(),i=0;i0)e.read-=this.blockSize;else for(i=0;i0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}},i.ofb=function(e){e=e||{},this.name="OFB",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=n.util.createBuffer(),this._partialBytes=0},i.ofb.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=o(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},i.ofb.prototype.encrypt=function(e,t,r){var n=e.length();if(0===e.length())return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&n>=this.blockSize)for(var i=0;i0&&(o=this.blockSize-o),this._partialOutput.clear(),i=0;i0)e.read-=this.blockSize;else for(i=0;i0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}},i.ofb.prototype.decrypt=i.ofb.prototype.encrypt,i.ctr=function(e){e=e||{},this.name="CTR",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=n.util.createBuffer(),this._partialBytes=0},i.ctr.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");this._iv=o(e.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},i.ctr.prototype.encrypt=function(e,t,r){var n=e.length();if(0===n)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&n>=this.blockSize)for(var i=0;i0&&(o=this.blockSize-o),this._partialOutput.clear(),i=0;i0&&(e.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}s(this._inBlock)},i.ctr.prototype.decrypt=i.ctr.prototype.encrypt,i.gcm=function(e){e=e||{},this.name="GCM",this.cipher=e.cipher,this.blockSize=e.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=n.util.createBuffer(),this._partialBytes=0,this._R=3774873600},i.gcm.prototype.start=function(e){if(!("iv"in e))throw new Error("Invalid IV parameter.");var t,r=n.util.createBuffer(e.iv);if(this._cipherLength=0,t="additionalData"in e?n.util.createBuffer(e.additionalData):n.util.createBuffer(),this._tagLength="tagLength"in e?e.tagLength:128,this._tag=null,e.decrypt&&(this._tag=n.util.createBuffer(e.tag).getBytes(),this._tag.length!==this._tagLength/8))throw new Error("Authentication tag does not match tag length.");this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var i=r.length();if(12===i)this._j0=[r.getInt32(),r.getInt32(),r.getInt32(),1];else{for(this._j0=[0,0,0,0];r.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[r.getInt32(),r.getInt32(),r.getInt32(),r.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(a(8*i)))}this._inBlock=this._j0.slice(0),s(this._inBlock),this._partialBytes=0,t=n.util.createBuffer(t),this._aDataLength=a(8*t.length());var o=t.length()%this.blockSize;for(o&&t.fillWithByte(0,this.blockSize-o),this._s=[0,0,0,0];t.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[t.getInt32(),t.getInt32(),t.getInt32(),t.getInt32()])},i.gcm.prototype.encrypt=function(e,t,r){var n=e.length();if(0===n)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&n>=this.blockSize){for(var i=0;i0&&(o=this.blockSize-o),this._partialOutput.clear(),i=0;i0&&this._partialOutput.getBytes(this._partialBytes),o>0&&!r)return e.read-=this.blockSize,t.putBytes(this._partialOutput.getBytes(o-this._partialBytes)),this._partialBytes=o,!0;t.putBytes(this._partialOutput.getBytes(n-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),s(this._inBlock)},i.gcm.prototype.decrypt=function(e,t,r){var n=e.length();if(n0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),s(this._inBlock),this._hashBlock[0]=e.getInt32(),this._hashBlock[1]=e.getInt32(),this._hashBlock[2]=e.getInt32(),this._hashBlock[3]=e.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var i=0;i0;--n)t[n]=e[n]>>>1|(1&e[n-1])<<31;t[0]=e[0]>>>1,r&&(t[0]^=this._R)},i.gcm.prototype.tableMultiply=function(e){for(var t=[0,0,0,0],r=0;r<32;++r){var n=e[r/8|0]>>>4*(7-r%8)&15,i=this._m[r][n];t[0]^=i[0],t[1]^=i[1],t[2]^=i[2],t[3]^=i[3]}return t},i.gcm.prototype.ghash=function(e,t,r){return t[0]^=r[0],t[1]^=r[1],t[2]^=r[2],t[3]^=r[3],this.tableMultiply(t)},i.gcm.prototype.generateHashTable=function(e,t){for(var r=8/t,n=4*r,i=16*r,o=new Array(i),s=0;s>>1,i=new Array(r);i[n]=e.slice(0);for(var o=n>>>1;o>0;)this.pow(i[2*o],i[o]=[]),o>>=1;for(o=2;o{var n=r(3832);function i(e,t){n.cipher.registerAlgorithm(e,(function(){return new n.des.Algorithm(e,t)}))}r(85649),r(61967),r(97116),e.exports=n.des=n.des||{},n.des.startEncrypting=function(e,t,r,n){var i=p({key:e,output:r,decrypt:!1,mode:n||(null===t?"ECB":"CBC")});return i.start(t),i},n.des.createEncryptionCipher=function(e,t){return p({key:e,output:null,decrypt:!1,mode:t})},n.des.startDecrypting=function(e,t,r,n){var i=p({key:e,output:r,decrypt:!0,mode:n||(null===t?"ECB":"CBC")});return i.start(t),i},n.des.createDecryptionCipher=function(e,t){return p({key:e,output:null,decrypt:!0,mode:t})},n.des.Algorithm=function(e,t){var r=this;r.name=e,r.mode=new t({blockSize:8,cipher:{encrypt:function(e,t){return d(r._keys,e,t,!1)},decrypt:function(e,t){return d(r._keys,e,t,!0)}}}),r._init=!1},n.des.Algorithm.prototype.initialize=function(e){if(!this._init){var t=n.util.createBuffer(e.key);if(0===this.name.indexOf("3DES")&&24!==t.length())throw new Error("Invalid Triple-DES key size: "+8*t.length());this._keys=function(e){for(var t,r=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],n=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],i=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],o=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],s=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],a=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],c=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],u=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],f=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],l=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],h=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],d=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],p=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],y=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],g=e.length()>8?3:1,b=[],m=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],v=0,w=0;w>>4^_))<<4,E^=t=65535&((_^=t)>>>-16^E),E^=(t=858993459&(E>>>2^(_^=t<<-16)))<<2,E^=t=65535&((_^=t)>>>-16^E),E^=(t=1431655765&(E>>>1^(_^=t<<-16)))<<1,E^=t=16711935&((_^=t)>>>8^E),t=(E^=(t=1431655765&(E>>>1^(_^=t<<8)))<<1)<<8|(_^=t)>>>20&240,E=_<<24|_<<8&16711680|_>>>8&65280|_>>>24&240,_=t;for(var S=0;S>>26,_=_<<2|_>>>26):(E=E<<1|E>>>27,_=_<<1|_>>>27);var A=r[(E&=-15)>>>28]|n[E>>>24&15]|i[E>>>20&15]|o[E>>>16&15]|s[E>>>12&15]|a[E>>>8&15]|c[E>>>4&15],T=u[(_&=-15)>>>28]|f[_>>>24&15]|l[_>>>20&15]|h[_>>>16&15]|d[_>>>12&15]|p[_>>>8&15]|y[_>>>4&15];t=65535&(T>>>16^A),b[v++]=A^t,b[v++]=T^t<<16}}return b}(t),this._init=!0}},i("DES-ECB",n.cipher.modes.ecb),i("DES-CBC",n.cipher.modes.cbc),i("DES-CFB",n.cipher.modes.cfb),i("DES-OFB",n.cipher.modes.ofb),i("DES-CTR",n.cipher.modes.ctr),i("3DES-ECB",n.cipher.modes.ecb),i("3DES-CBC",n.cipher.modes.cbc),i("3DES-CFB",n.cipher.modes.cfb),i("3DES-OFB",n.cipher.modes.ofb),i("3DES-CTR",n.cipher.modes.ctr);var o=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],s=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],a=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],c=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],u=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],f=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],l=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],h=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function d(e,t,r,n){var i,d,p=32===e.length?3:9;i=3===p?n?[30,-2,-2]:[0,32,2]:n?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var y=t[0],g=t[1];y^=(d=252645135&(y>>>4^g))<<4,y^=(d=65535&(y>>>16^(g^=d)))<<16,y^=d=858993459&((g^=d)>>>2^y),y^=d=16711935&((g^=d<<2)>>>8^y),y=(y^=(d=1431655765&(y>>>1^(g^=d<<8)))<<1)<<1|y>>>31,g=(g^=d)<<1|g>>>31;for(var b=0;b>>4|g<<28)^e[w+1];d=y,y=g,g=d^(s[E>>>24&63]|c[E>>>16&63]|f[E>>>8&63]|h[63&E]|o[_>>>24&63]|a[_>>>16&63]|u[_>>>8&63]|l[63&_])}d=y,y=g,g=d}g=g>>>1|g<<31,g^=d=1431655765&((y=y>>>1|y<<31)>>>1^g),g^=(d=16711935&(g>>>8^(y^=d<<1)))<<8,g^=(d=858993459&(g>>>2^(y^=d)))<<2,g^=d=65535&((y^=d)>>>16^g),g^=d=252645135&((y^=d<<16)>>>4^g),y^=d<<4,r[0]=y,r[1]=g}function p(e){var t,r="DES-"+((e=e||{}).mode||"CBC").toUpperCase(),i=(t=e.decrypt?n.cipher.createDecipher(r,e.key):n.cipher.createCipher(r,e.key)).start;return t.start=function(e,r){var o=null;r instanceof n.util.ByteBuffer&&(o=r,r={}),(r=r||{}).output=o,r.iv=e,i.call(t,r)},t}},80069:(e,t,r)=>{var n=r(3832);r(15764),r(49563),r(63219),r(97116);var i=r(59205),o=i.publicKeyValidator,s=i.privateKeyValidator;if(void 0===a)var a=n.jsbn.BigInteger;var c=n.util.ByteBuffer,u="undefined"==typeof Buffer?Uint8Array:Buffer;n.pki=n.pki||{},e.exports=n.pki.ed25519=n.ed25519=n.ed25519||{};var f=n.ed25519;function l(e){var t=e.message;if(t instanceof Uint8Array||t instanceof u)return t;var r=e.encoding;if(void 0===t){if(!e.md)throw new TypeError('"options.message" or "options.md" not specified.');t=e.md.digest().getBytes(),r="binary"}if("string"==typeof t&&!r)throw new TypeError('"options.encoding" must be "binary" or "utf8".');if("string"==typeof t){if("undefined"!=typeof Buffer)return Buffer.from(t,r);t=new c(t,r)}else if(!(t instanceof c))throw new TypeError('"options.message" must be a node.js Buffer, a Uint8Array, a forge ByteBuffer, or a string with "options.encoding" specifying its encoding.');for(var n=new u(t.length()),i=0;i=0;--r)K(n,n),1!==r&&U(n,n,t);for(r=0;r<16;++r)e[r]=n[r]}(r,r),U(r,r,i),U(r,r,o),U(r,r,o),U(e[0],r,o),K(n,e[0]),U(n,n,o),C(n,i)&&U(e[0],e[0],v),K(n,e[0]),U(n,n,o),C(n,i)?-1:(R(e[0])===t[31]>>7&&D(e[0],h,e[0]),U(e[3],e[0],e[1]),0)}(a,n))return-1;for(i=0;i=0};var h=N(),d=N([1]),p=N([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),y=N([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),g=N([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),b=N([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),m=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]),v=N([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function w(e,t){var r=n.md.sha512.create(),i=new c(e);r.update(i.getBytes(t),"binary");var o=r.digest().getBytes();if("undefined"!=typeof Buffer)return Buffer.from(o,"binary");for(var s=new u(f.constants.HASH_BYTE_LENGTH),a=0;a<64;++a)s[a]=o.charCodeAt(a);return s}function E(e,t){var r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i>8,t[i]-=256*r;t[i]+=r,t[n]=0}for(r=0,i=0;i<32;++i)t[i]+=r-(t[31]>>4)*m[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;++i)t[i]-=r*m[i];for(n=0;n<32;++n)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function _(e){for(var t=new Float64Array(64),r=0;r<64;++r)t[r]=e[r],e[r]=0;E(e,t)}function S(e,t){var r=N(),n=N(),i=N(),o=N(),s=N(),a=N(),c=N(),u=N(),f=N();D(r,e[1],e[0]),D(f,t[1],t[0]),U(r,r,f),L(n,e[0],e[1]),L(f,t[0],t[1]),U(n,n,f),U(i,e[3],t[3]),U(i,i,y),U(o,e[2],t[2]),L(o,o,o),D(s,n,r),D(a,o,i),L(c,o,i),L(u,n,r),U(e[0],s,a),U(e[1],u,c),U(e[2],c,a),U(e[3],s,u)}function A(e,t,r){for(var n=0;n<4;++n)O(e[n],t[n],r)}function T(e,t){var r=N(),n=N(),i=N();!function(e,t){var r,n=N();for(r=0;r<16;++r)n[r]=t[r];for(r=253;r>=0;--r)K(n,n),2!==r&&4!==r&&U(n,n,t);for(r=0;r<16;++r)e[r]=n[r]}(i,t[2]),U(r,t[0],i),U(n,t[1],i),I(e,n),e[31]^=R(r)<<7}function I(e,t){var r,n,i,o=N(),s=N();for(r=0;r<16;++r)s[r]=t[r];for(M(s),M(s),M(s),n=0;n<2;++n){for(o[0]=s[0]-65517,r=1;r<15;++r)o[r]=s[r]-65535-(o[r-1]>>16&1),o[r-1]&=65535;o[15]=s[15]-32767-(o[14]>>16&1),i=o[15]>>16&1,o[14]&=65535,O(s,o,1-i)}for(r=0;r<16;r++)e[2*r]=255&s[r],e[2*r+1]=s[r]>>8}function C(e,t){var r=new u(32),n=new u(32);return I(r,e),I(n,t),P(r,0,n,0)}function P(e,t,r,n){return function(e,t,r,n,i){var o,s=0;for(o=0;o<32;++o)s|=e[t+o]^r[n+o];return(1&s-1>>>8)-1}(e,t,r,n)}function R(e){var t=new u(32);return I(t,e),1&t[0]}function k(e,t,r){var n,i;for(x(e[0],h),x(e[1],d),x(e[2],d),x(e[3],h),i=255;i>=0;--i)A(e,t,n=r[i/8|0]>>(7&i)&1),S(t,e),S(e,e),A(e,t,n)}function B(e,t){var r=[N(),N(),N(),N()];x(r[0],g),x(r[1],b),x(r[2],d),U(r[3],g,b),k(e,r,t)}function x(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function M(e){var t,r,n=1;for(t=0;t<16;++t)r=e[t]+n+65535,n=Math.floor(r/65536),e[t]=r-65536*n;e[0]+=n-1+37*(n-1)}function O(e,t,r){for(var n,i=~(r-1),o=0;o<16;++o)n=i&(e[o]^t[o]),e[o]^=n,t[o]^=n}function N(e){var t,r=new Float64Array(16);if(e)for(t=0;t{e.exports={options:{usePureJavaScript:!1}}},36607:(e,t,r)=>{var n=r(3832);r(28991),r(97116),(e.exports=n.hmac=n.hmac||{}).create=function(){var e=null,t=null,r=null,i=null,o={start:function(o,s){if(null!==o)if("string"==typeof o){if(!((o=o.toLowerCase())in n.md.algorithms))throw new Error('Unknown hash algorithm "'+o+'"');t=n.md.algorithms[o].create()}else t=o;if(null===s)s=e;else{if("string"==typeof s)s=n.util.createBuffer(s);else if(n.util.isArray(s)){var a=s;s=n.util.createBuffer();for(var c=0;ct.blockLength&&(t.start(),t.update(s.bytes()),s=t.digest()),r=n.util.createBuffer(),i=n.util.createBuffer(),u=s.length(),c=0;c{var n,i=r(3832);function o(e,t,r){this.data=[],null!=e&&("number"==typeof e?this.fromNumber(e,t,r):null==t&&"string"!=typeof e?this.fromString(e,256):this.fromString(e,t))}function s(){return new o(null)}function a(e,t,r,n,i,o){for(var s=16383&t,a=t>>14;--o>=0;){var c=16383&this.data[e],u=this.data[e++]>>14,f=a*c+u*s;i=((c=s*c+((16383&f)<<14)+r.data[n]+i)>>28)+(f>>14)+a*u,r.data[n++]=268435455&c}return i}e.exports=i.jsbn=i.jsbn||{},i.jsbn.BigInteger=o,"undefined"==typeof navigator?(o.prototype.am=a,n=28):"Microsoft Internet Explorer"==navigator.appName?(o.prototype.am=function(e,t,r,n,i,o){for(var s=32767&t,a=t>>15;--o>=0;){var c=32767&this.data[e],u=this.data[e++]>>15,f=a*c+u*s;i=((c=s*c+((32767&f)<<15)+r.data[n]+(1073741823&i))>>>30)+(f>>>15)+a*u+(i>>>30),r.data[n++]=1073741823&c}return i},n=30):"Netscape"!=navigator.appName?(o.prototype.am=function(e,t,r,n,i,o){for(;--o>=0;){var s=t*this.data[e++]+r.data[n]+i;i=Math.floor(s/67108864),r.data[n++]=67108863&s}return i},n=26):(o.prototype.am=a,n=28),o.prototype.DB=n,o.prototype.DM=(1<>>16)&&(e=t,r+=16),0!=(t=e>>8)&&(e=t,r+=8),0!=(t=e>>4)&&(e=t,r+=4),0!=(t=e>>2)&&(e=t,r+=2),0!=(t=e>>1)&&(e=t,r+=1),r}function y(e){this.m=e}function g(e){this.m=e,this.mp=e.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,t+=16),0==(255&e)&&(e>>=8,t+=8),0==(15&e)&&(e>>=4,t+=4),0==(3&e)&&(e>>=2,t+=2),0==(1&e)&&++t,t}function _(e){for(var t=0;0!=e;)e&=e-1,++t;return t}function S(){}function A(e){return e}function T(e){this.r2=s(),this.q3=s(),o.ONE.dlShiftTo(2*e.t,this.r2),this.mu=this.r2.divide(e),this.m=e}y.prototype.convert=function(e){return e.s<0||e.compareTo(this.m)>=0?e.mod(this.m):e},y.prototype.revert=function(e){return e},y.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},y.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},y.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},g.prototype.convert=function(e){var t=s();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&t.compareTo(o.ZERO)>0&&this.m.subTo(t,t),t},g.prototype.revert=function(e){var t=s();return e.copyTo(t),this.reduce(t),t},g.prototype.reduce=function(e){for(;e.t<=this.mt2;)e.data[e.t++]=0;for(var t=0;t>15)*this.mpl&this.um)<<15)&e.DM;for(r=t+this.m.t,e.data[r]+=this.m.am(0,n,e,t,0,this.m.t);e.data[r]>=e.DV;)e.data[r]-=e.DV,e.data[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),e.compareTo(this.m)>=0&&e.subTo(this.m,e)},g.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},g.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},o.prototype.copyTo=function(e){for(var t=this.t-1;t>=0;--t)e.data[t]=this.data[t];e.t=this.t,e.s=this.s},o.prototype.fromInt=function(e){this.t=1,this.s=e<0?-1:0,e>0?this.data[0]=e:e<-1?this.data[0]=e+this.DV:this.t=0},o.prototype.fromString=function(e,t){var r;if(16==t)r=4;else if(8==t)r=3;else if(256==t)r=8;else if(2==t)r=1;else if(32==t)r=5;else{if(4!=t)return void this.fromRadix(e,t);r=2}this.t=0,this.s=0;for(var n=e.length,i=!1,s=0;--n>=0;){var a=8==r?255&e[n]:h(e,n);a<0?"-"==e.charAt(n)&&(i=!0):(i=!1,0==s?this.data[this.t++]=a:s+r>this.DB?(this.data[this.t-1]|=(a&(1<>this.DB-s):this.data[this.t-1]|=a<=this.DB&&(s-=this.DB))}8==r&&0!=(128&e[0])&&(this.s=-1,s>0&&(this.data[this.t-1]|=(1<0&&this.data[this.t-1]==e;)--this.t},o.prototype.dlShiftTo=function(e,t){var r;for(r=this.t-1;r>=0;--r)t.data[r+e]=this.data[r];for(r=e-1;r>=0;--r)t.data[r]=0;t.t=this.t+e,t.s=this.s},o.prototype.drShiftTo=function(e,t){for(var r=e;r=0;--r)t.data[r+s+1]=this.data[r]>>i|a,a=(this.data[r]&o)<=0;--r)t.data[r]=0;t.data[s]=a,t.t=this.t+s+1,t.s=this.s,t.clamp()},o.prototype.rShiftTo=function(e,t){t.s=this.s;var r=Math.floor(e/this.DB);if(r>=this.t)t.t=0;else{var n=e%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(t.data[this.t-r-1]|=(this.s&o)<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t.data[r++]=this.DV+n:n>0&&(t.data[r++]=n),t.t=r,t.clamp()},o.prototype.multiplyTo=function(e,t){var r=this.abs(),n=e.abs(),i=r.t;for(t.t=i+n.t;--i>=0;)t.data[i]=0;for(i=0;i=0;)e.data[r]=0;for(r=0;r=t.DV&&(e.data[r+t.t]-=t.DV,e.data[r+t.t+1]=1)}e.t>0&&(e.data[e.t-1]+=t.am(r,t.data[r],e,2*r,0,1)),e.s=0,e.clamp()},o.prototype.divRemTo=function(e,t,r){var n=e.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(f,a),i.lShiftTo(f,r)):(n.copyTo(a),i.copyTo(r));var l=a.t,h=a.data[l-1];if(0!=h){var d=h*(1<1?a.data[l-2]>>this.F2:0),y=this.FV/d,g=(1<=0&&(r.data[r.t++]=1,r.subTo(w,r)),o.ONE.dlShiftTo(l,w),w.subTo(a,a);a.t=0;){var E=r.data[--m]==h?this.DM:Math.floor(r.data[m]*y+(r.data[m-1]+b)*g);if((r.data[m]+=a.am(0,E,r,v,0,l))0&&r.rShiftTo(f,r),c<0&&o.ZERO.subTo(r,r)}}},o.prototype.invDigit=function(){if(this.t<1)return 0;var e=this.data[0];if(0==(1&e))return 0;var t=3&e;return(t=(t=(t=(t=t*(2-(15&e)*t)&15)*(2-(255&e)*t)&255)*(2-((65535&e)*t&65535))&65535)*(2-e*t%this.DV)%this.DV)>0?this.DV-t:-t},o.prototype.isEven=function(){return 0==(this.t>0?1&this.data[0]:this.s)},o.prototype.exp=function(e,t){if(e>4294967295||e<1)return o.ONE;var r=s(),n=s(),i=t.convert(this),a=p(e)-1;for(i.copyTo(r);--a>=0;)if(t.sqrTo(r,n),(e&1<0)t.mulTo(n,i,r);else{var c=r;r=n,n=c}return t.revert(r)},o.prototype.toString=function(e){if(this.s<0)return"-"+this.negate().toString(e);var t;if(16==e)t=4;else if(8==e)t=3;else if(2==e)t=1;else if(32==e)t=5;else{if(4!=e)return this.toRadix(e);t=2}var r,n=(1<0)for(a>a)>0&&(i=!0,o=l(r));s>=0;)a>(a+=this.DB-t)):(r=this.data[s]>>(a-=t)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=l(r));return i?o:"0"},o.prototype.negate=function(){var e=s();return o.ZERO.subTo(this,e),e},o.prototype.abs=function(){return this.s<0?this.negate():this},o.prototype.compareTo=function(e){var t=this.s-e.s;if(0!=t)return t;var r=this.t;if(0!=(t=r-e.t))return this.s<0?-t:t;for(;--r>=0;)if(0!=(t=this.data[r]-e.data[r]))return t;return 0},o.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+p(this.data[this.t-1]^this.s&this.DM)},o.prototype.mod=function(e){var t=s();return this.abs().divRemTo(e,null,t),this.s<0&&t.compareTo(o.ZERO)>0&&e.subTo(t,t),t},o.prototype.modPowInt=function(e,t){var r;return r=e<256||t.isEven()?new y(t):new g(t),this.exp(e,r)},o.ZERO=d(0),o.ONE=d(1),S.prototype.convert=A,S.prototype.revert=A,S.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r)},S.prototype.sqrTo=function(e,t){e.squareTo(t)},T.prototype.convert=function(e){if(e.s<0||e.t>2*this.m.t)return e.mod(this.m);if(e.compareTo(this.m)<0)return e;var t=s();return e.copyTo(t),this.reduce(t),t},T.prototype.revert=function(e){return e},T.prototype.reduce=function(e){for(e.drShiftTo(this.m.t-1,this.r2),e.t>this.m.t+1&&(e.t=this.m.t+1,e.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);e.compareTo(this.r2)<0;)e.dAddOffset(1,this.m.t+1);for(e.subTo(this.r2,e);e.compareTo(this.m)>=0;)e.subTo(this.m,e)},T.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},T.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)};var I=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],C=(1<<26)/I[I.length-1];o.prototype.chunkSize=function(e){return Math.floor(Math.LN2*this.DB/Math.log(e))},o.prototype.toRadix=function(e){if(null==e&&(e=10),0==this.signum()||e<2||e>36)return"0";var t=this.chunkSize(e),r=Math.pow(e,t),n=d(r),i=s(),o=s(),a="";for(this.divRemTo(n,i,o);i.signum()>0;)a=(r+o.intValue()).toString(e).substr(1)+a,i.divRemTo(n,i,o);return o.intValue().toString(e)+a},o.prototype.fromRadix=function(e,t){this.fromInt(0),null==t&&(t=10);for(var r=this.chunkSize(t),n=Math.pow(t,r),i=!1,s=0,a=0,c=0;c=r&&(this.dMultiply(n),this.dAddOffset(a,0),s=0,a=0))}s>0&&(this.dMultiply(Math.pow(t,s)),this.dAddOffset(a,0)),i&&o.ZERO.subTo(this,this)},o.prototype.fromNumber=function(e,t,r){if("number"==typeof t)if(e<2)this.fromInt(1);else for(this.fromNumber(e,r),this.testBit(e-1)||this.bitwiseTo(o.ONE.shiftLeft(e-1),m,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(t);)this.dAddOffset(2,0),this.bitLength()>e&&this.subTo(o.ONE.shiftLeft(e-1),this);else{var n=new Array,i=7&e;n.length=1+(e>>3),t.nextBytes(n),i>0?n[0]&=(1<>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=e.s}t.s=n<0?-1:0,n>0?t.data[r++]=n:n<-1&&(t.data[r++]=this.DV+n),t.t=r,t.clamp()},o.prototype.dMultiply=function(e){this.data[this.t]=this.am(0,e-1,this,0,0,this.t),++this.t,this.clamp()},o.prototype.dAddOffset=function(e,t){if(0!=e){for(;this.t<=t;)this.data[this.t++]=0;for(this.data[t]+=e;this.data[t]>=this.DV;)this.data[t]-=this.DV,++t>=this.t&&(this.data[this.t++]=0),++this.data[t]}},o.prototype.multiplyLowerTo=function(e,t,r){var n,i=Math.min(this.t+e.t,t);for(r.s=0,r.t=i;i>0;)r.data[--i]=0;for(n=r.t-this.t;i=0;)r.data[n]=0;for(n=Math.max(t-this.t,0);n0)if(0==t)r=this.data[0]%e;else for(var n=this.t-1;n>=0;--n)r=(t*r+this.data[n])%e;return r},o.prototype.millerRabin=function(e){var t=this.subtract(o.ONE),r=t.getLowestSetBit();if(r<=0)return!1;for(var n,i=t.shiftRight(r),s={nextBytes:function(e){for(var t=0;t=0);var c=n.modPow(i,this);if(0!=c.compareTo(o.ONE)&&0!=c.compareTo(t)){for(var u=1;u++>24},o.prototype.shortValue=function(){return 0==this.t?this.s:this.data[0]<<16>>16},o.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this.data[0]<=0?0:1},o.prototype.toByteArray=function(){var e=this.t,t=new Array;t[0]=this.s;var r,n=this.DB-e*this.DB%8,i=0;if(e-- >0)for(n>n)!=(this.s&this.DM)>>n&&(t[i++]=r|this.s<=0;)n<8?(r=(this.data[e]&(1<>(n+=this.DB-8)):(r=this.data[e]>>(n-=8)&255,n<=0&&(n+=this.DB,--e)),0!=(128&r)&&(r|=-256),0==i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(t[i++]=r);return t},o.prototype.equals=function(e){return 0==this.compareTo(e)},o.prototype.min=function(e){return this.compareTo(e)<0?this:e},o.prototype.max=function(e){return this.compareTo(e)>0?this:e},o.prototype.and=function(e){var t=s();return this.bitwiseTo(e,b,t),t},o.prototype.or=function(e){var t=s();return this.bitwiseTo(e,m,t),t},o.prototype.xor=function(e){var t=s();return this.bitwiseTo(e,v,t),t},o.prototype.andNot=function(e){var t=s();return this.bitwiseTo(e,w,t),t},o.prototype.not=function(){for(var e=s(),t=0;t=this.t?0!=this.s:0!=(this.data[t]&1<1){var l=s();for(n.sqrTo(a[1],l);c<=f;)a[c]=s(),n.mulTo(l,a[c-2],a[c]),c+=2}var h,b,m=e.t-1,v=!0,w=s();for(i=p(e.data[m])-1;m>=0;){for(i>=u?h=e.data[m]>>i-u&f:(h=(e.data[m]&(1<0&&(h|=e.data[m-1]>>this.DB+i-u)),c=r;0==(1&h);)h>>=1,--c;if((i-=c)<0&&(i+=this.DB,--m),v)a[h].copyTo(o),v=!1;else{for(;c>1;)n.sqrTo(o,w),n.sqrTo(w,o),c-=2;c>0?n.sqrTo(o,w):(b=o,o=w,w=b),n.mulTo(w,a[h],o)}for(;m>=0&&0==(e.data[m]&1<=0?(r.subTo(n,r),t&&i.subTo(a,i),s.subTo(c,s)):(n.subTo(r,n),t&&a.subTo(i,a),c.subTo(s,c))}return 0!=n.compareTo(o.ONE)?o.ZERO:c.compareTo(e)>=0?c.subtract(e):c.signum()<0?(c.addTo(e,c),c.signum()<0?c.add(e):c):c},o.prototype.pow=function(e){return this.exp(e,new S)},o.prototype.gcd=function(e){var t=this.s<0?this.negate():this.clone(),r=e.s<0?e.negate():e.clone();if(t.compareTo(r)<0){var n=t;t=r,r=n}var i=t.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return t;for(i0&&(t.rShiftTo(o,t),r.rShiftTo(o,r));t.signum()>0;)(i=t.getLowestSetBit())>0&&t.rShiftTo(i,t),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),t.compareTo(r)>=0?(t.subTo(r,t),t.rShiftTo(1,t)):(r.subTo(t,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},o.prototype.isProbablePrime=function(e){var t,r=this.abs();if(1==r.t&&r.data[0]<=I[I.length-1]){for(t=0;t{var n=r(3832);e.exports=n.md=n.md||{},n.md.algorithms=n.md.algorithms||{}},86971:(e,t,r)=>{var n=r(3832);r(83453),e.exports=n.mgf=n.mgf||{},n.mgf.mgf1=n.mgf1},83453:(e,t,r)=>{var n=r(3832);r(97116),n.mgf=n.mgf||{},(e.exports=n.mgf.mgf1=n.mgf1=n.mgf1||{}).create=function(e){return{generate:function(t,r){for(var i=new n.util.ByteBuffer,o=Math.ceil(r/e.digestLength),s=0;s{var n=r(3832);n.pki=n.pki||{};var i=e.exports=n.pki.oids=n.oids=n.oids||{};function o(e,t){i[e]=t,i[t]=e}function s(e,t){i[e]=t}o("1.2.840.113549.1.1.1","rsaEncryption"),o("1.2.840.113549.1.1.4","md5WithRSAEncryption"),o("1.2.840.113549.1.1.5","sha1WithRSAEncryption"),o("1.2.840.113549.1.1.7","RSAES-OAEP"),o("1.2.840.113549.1.1.8","mgf1"),o("1.2.840.113549.1.1.9","pSpecified"),o("1.2.840.113549.1.1.10","RSASSA-PSS"),o("1.2.840.113549.1.1.11","sha256WithRSAEncryption"),o("1.2.840.113549.1.1.12","sha384WithRSAEncryption"),o("1.2.840.113549.1.1.13","sha512WithRSAEncryption"),o("1.3.101.112","EdDSA25519"),o("1.2.840.10040.4.3","dsa-with-sha1"),o("1.3.14.3.2.7","desCBC"),o("1.3.14.3.2.26","sha1"),o("2.16.840.1.101.3.4.2.1","sha256"),o("2.16.840.1.101.3.4.2.2","sha384"),o("2.16.840.1.101.3.4.2.3","sha512"),o("1.2.840.113549.2.5","md5"),o("1.2.840.113549.1.7.1","data"),o("1.2.840.113549.1.7.2","signedData"),o("1.2.840.113549.1.7.3","envelopedData"),o("1.2.840.113549.1.7.4","signedAndEnvelopedData"),o("1.2.840.113549.1.7.5","digestedData"),o("1.2.840.113549.1.7.6","encryptedData"),o("1.2.840.113549.1.9.1","emailAddress"),o("1.2.840.113549.1.9.2","unstructuredName"),o("1.2.840.113549.1.9.3","contentType"),o("1.2.840.113549.1.9.4","messageDigest"),o("1.2.840.113549.1.9.5","signingTime"),o("1.2.840.113549.1.9.6","counterSignature"),o("1.2.840.113549.1.9.7","challengePassword"),o("1.2.840.113549.1.9.8","unstructuredAddress"),o("1.2.840.113549.1.9.14","extensionRequest"),o("1.2.840.113549.1.9.20","friendlyName"),o("1.2.840.113549.1.9.21","localKeyId"),o("1.2.840.113549.1.9.22.1","x509Certificate"),o("1.2.840.113549.1.12.10.1.1","keyBag"),o("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag"),o("1.2.840.113549.1.12.10.1.3","certBag"),o("1.2.840.113549.1.12.10.1.4","crlBag"),o("1.2.840.113549.1.12.10.1.5","secretBag"),o("1.2.840.113549.1.12.10.1.6","safeContentsBag"),o("1.2.840.113549.1.5.13","pkcs5PBES2"),o("1.2.840.113549.1.5.12","pkcs5PBKDF2"),o("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4"),o("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4"),o("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC"),o("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC"),o("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC"),o("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC"),o("1.2.840.113549.2.7","hmacWithSHA1"),o("1.2.840.113549.2.8","hmacWithSHA224"),o("1.2.840.113549.2.9","hmacWithSHA256"),o("1.2.840.113549.2.10","hmacWithSHA384"),o("1.2.840.113549.2.11","hmacWithSHA512"),o("1.2.840.113549.3.7","des-EDE3-CBC"),o("2.16.840.1.101.3.4.1.2","aes128-CBC"),o("2.16.840.1.101.3.4.1.22","aes192-CBC"),o("2.16.840.1.101.3.4.1.42","aes256-CBC"),o("2.5.4.3","commonName"),o("2.5.4.5","serialName"),o("2.5.4.6","countryName"),o("2.5.4.7","localityName"),o("2.5.4.8","stateOrProvinceName"),o("2.5.4.9","streetAddress"),o("2.5.4.10","organizationName"),o("2.5.4.11","organizationalUnitName"),o("2.5.4.13","description"),o("2.5.4.15","businessCategory"),o("2.5.4.17","postalCode"),o("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName"),o("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName"),o("2.16.840.1.113730.1.1","nsCertType"),o("2.16.840.1.113730.1.13","nsComment"),s("2.5.29.1","authorityKeyIdentifier"),s("2.5.29.2","keyAttributes"),s("2.5.29.3","certificatePolicies"),s("2.5.29.4","keyUsageRestriction"),s("2.5.29.5","policyMapping"),s("2.5.29.6","subtreesConstraint"),s("2.5.29.7","subjectAltName"),s("2.5.29.8","issuerAltName"),s("2.5.29.9","subjectDirectoryAttributes"),s("2.5.29.10","basicConstraints"),s("2.5.29.11","nameConstraints"),s("2.5.29.12","policyConstraints"),s("2.5.29.13","basicConstraints"),o("2.5.29.14","subjectKeyIdentifier"),o("2.5.29.15","keyUsage"),s("2.5.29.16","privateKeyUsagePeriod"),o("2.5.29.17","subjectAltName"),o("2.5.29.18","issuerAltName"),o("2.5.29.19","basicConstraints"),s("2.5.29.20","cRLNumber"),s("2.5.29.21","cRLReason"),s("2.5.29.22","expirationDate"),s("2.5.29.23","instructionCode"),s("2.5.29.24","invalidityDate"),s("2.5.29.25","cRLDistributionPoints"),s("2.5.29.26","issuingDistributionPoint"),s("2.5.29.27","deltaCRLIndicator"),s("2.5.29.28","issuingDistributionPoint"),s("2.5.29.29","certificateIssuer"),s("2.5.29.30","nameConstraints"),o("2.5.29.31","cRLDistributionPoints"),o("2.5.29.32","certificatePolicies"),s("2.5.29.33","policyMappings"),s("2.5.29.34","policyConstraints"),o("2.5.29.35","authorityKeyIdentifier"),s("2.5.29.36","policyConstraints"),o("2.5.29.37","extKeyUsage"),s("2.5.29.46","freshestCRL"),s("2.5.29.54","inhibitAnyPolicy"),o("1.3.6.1.4.1.11129.2.4.2","timestampList"),o("1.3.6.1.5.5.7.1.1","authorityInfoAccess"),o("1.3.6.1.5.5.7.3.1","serverAuth"),o("1.3.6.1.5.5.7.3.2","clientAuth"),o("1.3.6.1.5.5.7.3.3","codeSigning"),o("1.3.6.1.5.5.7.3.4","emailProtection"),o("1.3.6.1.5.5.7.3.8","timeStamping")},97450:(e,t,r)=>{var n=r(3832);if(r(8925),r(3068),r(33480),r(28991),r(66270),r(98960),r(26953),r(49563),r(69372),r(28095),r(97116),void 0===i)var i=n.jsbn.BigInteger;var o=n.asn1,s=n.pki=n.pki||{};e.exports=s.pbe=n.pbe=n.pbe||{};var a=s.oids,c={name:"EncryptedPrivateKeyInfo",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:o.Class.UNIVERSAL,type:o.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:o.Class.UNIVERSAL,type:o.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},u={name:"PBES2Algorithms",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:o.Class.UNIVERSAL,type:o.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:o.Class.UNIVERSAL,type:o.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:o.Class.UNIVERSAL,type:o.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:o.Class.UNIVERSAL,type:o.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:o.Class.UNIVERSAL,type:o.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:o.Class.UNIVERSAL,type:o.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:o.Class.UNIVERSAL,type:o.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},f={name:"pkcs-12PbeParams",tagClass:o.Class.UNIVERSAL,type:o.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:o.Class.UNIVERSAL,type:o.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:o.Class.UNIVERSAL,type:o.Type.INTEGER,constructed:!1,capture:"iterations"}]};function l(e,t){return e.start().update(t).digest().getBytes()}function h(e){var t;if(e){if(!(t=s.oids[o.derToOid(e)])){var r=new Error("Unsupported PRF OID.");throw r.oid=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}}else t="hmacWithSHA1";return d(t)}function d(e){var t=n.md;switch(e){case"hmacWithSHA224":t=n.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":e=e.substr(8).toLowerCase();break;default:var r=new Error("Unsupported PRF algorithm.");throw r.algorithm=e,r.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],r}if(!t||!(e in t))throw new Error("Unknown hash algorithm: "+e);return t[e].create()}s.encryptPrivateKeyInfo=function(e,t,r){(r=r||{}).saltSize=r.saltSize||8,r.count=r.count||2048,r.algorithm=r.algorithm||"aes128",r.prfAlgorithm=r.prfAlgorithm||"sha1";var i,c,u,f=n.random.getBytesSync(r.saltSize),l=r.count,h=o.integerToDer(l);if(0===r.algorithm.indexOf("aes")||"des"===r.algorithm){var p,y,g;switch(r.algorithm){case"aes128":i=16,p=16,y=a["aes128-CBC"],g=n.aes.createEncryptionCipher;break;case"aes192":i=24,p=16,y=a["aes192-CBC"],g=n.aes.createEncryptionCipher;break;case"aes256":i=32,p=16,y=a["aes256-CBC"],g=n.aes.createEncryptionCipher;break;case"des":i=8,p=8,y=a.desCBC,g=n.des.createEncryptionCipher;break;default:throw(_=new Error("Cannot encrypt private key. Unknown encryption algorithm.")).algorithm=r.algorithm,_}var b="hmacWith"+r.prfAlgorithm.toUpperCase(),m=d(b),v=n.pkcs5.pbkdf2(t,f,l,i,m),w=n.random.getBytesSync(p);(S=g(v)).start(w),S.update(o.toDer(e)),S.finish(),u=S.output.getBytes();var E=function(e,t,r,i){var a=o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OCTETSTRING,!1,e),o.create(o.Class.UNIVERSAL,o.Type.INTEGER,!1,t.getBytes())]);return"hmacWithSHA1"!==i&&a.value.push(o.create(o.Class.UNIVERSAL,o.Type.INTEGER,!1,n.util.hexToBytes(r.toString(16))),o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OID,!1,o.oidToDer(s.oids[i]).getBytes()),o.create(o.Class.UNIVERSAL,o.Type.NULL,!1,"")])),a}(f,h,i,b);c=o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OID,!1,o.oidToDer(a.pkcs5PBES2).getBytes()),o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OID,!1,o.oidToDer(a.pkcs5PBKDF2).getBytes()),E]),o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OID,!1,o.oidToDer(y).getBytes()),o.create(o.Class.UNIVERSAL,o.Type.OCTETSTRING,!1,w)])])])}else{var _;if("3des"!==r.algorithm)throw(_=new Error("Cannot encrypt private key. Unknown encryption algorithm.")).algorithm=r.algorithm,_;i=24;var S,A=new n.util.ByteBuffer(f);v=s.pbe.generatePkcs12Key(t,A,1,l,i),w=s.pbe.generatePkcs12Key(t,A,2,l,i),(S=n.des.createEncryptionCipher(v)).start(w),S.update(o.toDer(e)),S.finish(),u=S.output.getBytes(),c=o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OID,!1,o.oidToDer(a["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[o.create(o.Class.UNIVERSAL,o.Type.OCTETSTRING,!1,f),o.create(o.Class.UNIVERSAL,o.Type.INTEGER,!1,h.getBytes())])])}return o.create(o.Class.UNIVERSAL,o.Type.SEQUENCE,!0,[c,o.create(o.Class.UNIVERSAL,o.Type.OCTETSTRING,!1,u)])},s.decryptPrivateKeyInfo=function(e,t){var r=null,i={},a=[];if(!o.validate(e,c,i,a)){var u=new Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw u.errors=a,u}var f=o.derToOid(i.encryptionOid),l=s.pbe.getCipher(f,i.encryptionParams,t),h=n.util.createBuffer(i.encryptedData);return l.update(h),l.finish()&&(r=o.fromDer(l.output)),r},s.encryptedPrivateKeyToPem=function(e,t){var r={type:"ENCRYPTED PRIVATE KEY",body:o.toDer(e).getBytes()};return n.pem.encode(r,{maxline:t})},s.encryptedPrivateKeyFromPem=function(e){var t=n.pem.decode(e)[0];if("ENCRYPTED PRIVATE KEY"!==t.type){var r=new Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw r.headerType=t.type,r}if(t.procType&&"ENCRYPTED"===t.procType.type)throw new Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return o.fromDer(t.body)},s.encryptRsaPrivateKey=function(e,t,r){if(!(r=r||{}).legacy){var i=s.wrapRsaPrivateKey(s.privateKeyToAsn1(e));return i=s.encryptPrivateKeyInfo(i,t,r),s.encryptedPrivateKeyToPem(i)}var a,c,u,f;switch(r.algorithm){case"aes128":a="AES-128-CBC",u=16,c=n.random.getBytesSync(16),f=n.aes.createEncryptionCipher;break;case"aes192":a="AES-192-CBC",u=24,c=n.random.getBytesSync(16),f=n.aes.createEncryptionCipher;break;case"aes256":a="AES-256-CBC",u=32,c=n.random.getBytesSync(16),f=n.aes.createEncryptionCipher;break;case"3des":a="DES-EDE3-CBC",u=24,c=n.random.getBytesSync(8),f=n.des.createEncryptionCipher;break;case"des":a="DES-CBC",u=8,c=n.random.getBytesSync(8),f=n.des.createEncryptionCipher;break;default:var l=new Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+r.algorithm+'".');throw l.algorithm=r.algorithm,l}var h=f(n.pbe.opensslDeriveBytes(t,c.substr(0,8),u));h.start(c),h.update(o.toDer(s.privateKeyToAsn1(e))),h.finish();var d={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:a,parameters:n.util.bytesToHex(c).toUpperCase()},body:h.output.getBytes()};return n.pem.encode(d)},s.decryptRsaPrivateKey=function(e,t){var r=null,i=n.pem.decode(e)[0];if("ENCRYPTED PRIVATE KEY"!==i.type&&"PRIVATE KEY"!==i.type&&"RSA PRIVATE KEY"!==i.type)throw(u=new Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".')).headerType=u,u;if(i.procType&&"ENCRYPTED"===i.procType.type){var a,c;switch(i.dekInfo.algorithm){case"DES-CBC":a=8,c=n.des.createDecryptionCipher;break;case"DES-EDE3-CBC":a=24,c=n.des.createDecryptionCipher;break;case"AES-128-CBC":a=16,c=n.aes.createDecryptionCipher;break;case"AES-192-CBC":a=24,c=n.aes.createDecryptionCipher;break;case"AES-256-CBC":a=32,c=n.aes.createDecryptionCipher;break;case"RC2-40-CBC":a=5,c=function(e){return n.rc2.createDecryptionCipher(e,40)};break;case"RC2-64-CBC":a=8,c=function(e){return n.rc2.createDecryptionCipher(e,64)};break;case"RC2-128-CBC":a=16,c=function(e){return n.rc2.createDecryptionCipher(e,128)};break;default:var u;throw(u=new Error('Could not decrypt private key; unsupported encryption algorithm "'+i.dekInfo.algorithm+'".')).algorithm=i.dekInfo.algorithm,u}var f=n.util.hexToBytes(i.dekInfo.parameters),l=c(n.pbe.opensslDeriveBytes(t,f.substr(0,8),a));if(l.start(f),l.update(n.util.createBuffer(i.body)),!l.finish())return r;r=l.output.getBytes()}else r=i.body;return null!==(r="ENCRYPTED PRIVATE KEY"===i.type?s.decryptPrivateKeyInfo(o.fromDer(r),t):o.fromDer(r))&&(r=s.privateKeyFromAsn1(r)),r},s.pbe.generatePkcs12Key=function(e,t,r,i,o,s){var a,c;if(null==s){if(!("sha1"in n.md))throw new Error('"sha1" hash algorithm unavailable.');s=n.md.sha1.create()}var u=s.digestLength,f=s.blockLength,l=new n.util.ByteBuffer,h=new n.util.ByteBuffer;if(null!=e){for(c=0;c=0;c--)R>>=8,R+=T.at(c)+P.at(c),P.setAt(c,255&R);C.putBuffer(P)}w=C,l.putBuffer(S)}return l.truncate(l.length()-o),l},s.pbe.getCipher=function(e,t,r){switch(e){case s.oids.pkcs5PBES2:return s.pbe.getCipherForPBES2(e,t,r);case s.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case s.oids["pbewithSHAAnd40BitRC2-CBC"]:return s.pbe.getCipherForPKCS12PBE(e,t,r);default:var n=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw n.oid=e,n.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],n}},s.pbe.getCipherForPBES2=function(e,t,r){var i,a={},c=[];if(!o.validate(t,u,a,c))throw(i=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.")).errors=c,i;if((e=o.derToOid(a.kdfOid))!==s.oids.pkcs5PBKDF2)throw(i=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.")).oid=e,i.supportedOids=["pkcs5PBKDF2"],i;if((e=o.derToOid(a.encOid))!==s.oids["aes128-CBC"]&&e!==s.oids["aes192-CBC"]&&e!==s.oids["aes256-CBC"]&&e!==s.oids["des-EDE3-CBC"]&&e!==s.oids.desCBC)throw(i=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.")).oid=e,i.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],i;var f,l,d=a.kdfSalt,p=n.util.createBuffer(a.kdfIterationCount);switch(p=p.getInt(p.length()<<3),s.oids[e]){case"aes128-CBC":f=16,l=n.aes.createDecryptionCipher;break;case"aes192-CBC":f=24,l=n.aes.createDecryptionCipher;break;case"aes256-CBC":f=32,l=n.aes.createDecryptionCipher;break;case"des-EDE3-CBC":f=24,l=n.des.createDecryptionCipher;break;case"desCBC":f=8,l=n.des.createDecryptionCipher}var y=h(a.prfOid),g=n.pkcs5.pbkdf2(r,d,p,f,y),b=a.encIv,m=l(g);return m.start(b),m},s.pbe.getCipherForPKCS12PBE=function(e,t,r){var i={},a=[];if(!o.validate(t,f,i,a))throw(y=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.")).errors=a,y;var c,u,l,d=n.util.createBuffer(i.salt),p=n.util.createBuffer(i.iterations);switch(p=p.getInt(p.length()<<3),e){case s.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:c=24,u=8,l=n.des.startDecrypting;break;case s.oids["pbewithSHAAnd40BitRC2-CBC"]:c=5,u=8,l=function(e,t){var r=n.rc2.createDecryptionCipher(e,40);return r.start(t,null),r};break;default:var y;throw(y=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.")).oid=e,y}var g=h(i.prfOid),b=s.pbe.generatePkcs12Key(r,d,1,p,c,g);return g.start(),l(b,s.pbe.generatePkcs12Key(r,d,2,p,u,g))},s.pbe.opensslDeriveBytes=function(e,t,r,i){if(null==i){if(!("md5"in n.md))throw new Error('"md5" hash algorithm unavailable.');i=n.md.md5.create()}null===t&&(t="");for(var o=[l(i,e+t)],s=16,a=1;s{var n=r(3832);r(36607),r(28991),r(97116);var i,o=n.pkcs5=n.pkcs5||{};n.util.isNodejs&&!n.options.usePureJavaScript&&(i=r(25819)),e.exports=n.pbkdf2=o.pbkdf2=function(e,t,r,o,s,a){if("function"==typeof s&&(a=s,s=null),n.util.isNodejs&&!n.options.usePureJavaScript&&i.pbkdf2&&(null===s||"object"!=typeof s)&&(i.pbkdf2Sync.length>4||!s||"sha1"===s))return"string"!=typeof s&&(s="sha1"),e=Buffer.from(e,"binary"),t=Buffer.from(t,"binary"),a?4===i.pbkdf2Sync.length?i.pbkdf2(e,t,r,o,(function(e,t){if(e)return a(e);a(null,t.toString("binary"))})):i.pbkdf2(e,t,r,o,s,(function(e,t){if(e)return a(e);a(null,t.toString("binary"))})):4===i.pbkdf2Sync.length?i.pbkdf2Sync(e,t,r,o).toString("binary"):i.pbkdf2Sync(e,t,r,o,s).toString("binary");if(null==s&&(s="sha1"),"string"==typeof s){if(!(s in n.md.algorithms))throw new Error("Unknown hash algorithm: "+s);s=n.md[s].create()}var c=s.digestLength;if(o>4294967295*c){var u=new Error("Derived key is too long.");if(a)return a(u);throw u}var f=Math.ceil(o/c),l=o-(f-1)*c,h=n.hmac.create();h.start(s,e);var d,p,y,g="";if(!a){for(var b=1;b<=f;++b){h.start(null,null),h.update(t),h.update(n.util.int32ToBytes(b)),d=y=h.digest().getBytes();for(var m=2;m<=r;++m)h.start(null,null),h.update(y),p=h.digest().getBytes(),d=n.util.xorBytes(d,p,c),y=p;g+=bf)return a(null,g);h.start(null,null),h.update(t),h.update(n.util.int32ToBytes(b)),d=y=h.digest().getBytes(),m=2,w()}function w(){if(m<=r)return h.start(null,null),h.update(y),p=h.digest().getBytes(),d=n.util.xorBytes(d,p,c),y=p,++m,n.util.setImmediate(w);g+=b{var n=r(3832);r(97116);var i=e.exports=n.pem=n.pem||{};function o(e){for(var t=e.name+": ",r=[],n=function(e,t){return" "+t},i=0;i65&&-1!==s){var a=t[s];","===a?(++s,t=t.substr(0,s)+"\r\n "+t.substr(s)):t=t.substr(0,s)+"\r\n"+a+t.substr(s+1),o=i-s-1,s=-1,++i}else" "!==t[i]&&"\t"!==t[i]&&","!==t[i]||(s=i);return t}function s(e){return e.replace(/^\s+/,"")}i.encode=function(e,t){t=t||{};var r,i="-----BEGIN "+e.type+"-----\r\n";if(e.procType&&(i+=o(r={name:"Proc-Type",values:[String(e.procType.version),e.procType.type]})),e.contentDomain&&(i+=o(r={name:"Content-Domain",values:[e.contentDomain]})),e.dekInfo&&(r={name:"DEK-Info",values:[e.dekInfo.algorithm]},e.dekInfo.parameters&&r.values.push(e.dekInfo.parameters),i+=o(r)),e.headers)for(var s=0;s{var n=r(3832);r(97116),r(49563),r(137);var i=e.exports=n.pkcs1=n.pkcs1||{};function o(e,t,r){r||(r=n.md.sha1.create());for(var i="",o=Math.ceil(t/r.digestLength),s=0;s>24&255,s>>16&255,s>>8&255,255&s);r.start(),r.update(e+a),i+=r.digest().getBytes()}return i.substring(0,t)}i.encode_rsa_oaep=function(e,t,r){var i,s,a,c;"string"==typeof r?(i=r,s=arguments[3]||void 0,a=arguments[4]||void 0):r&&(i=r.label||void 0,s=r.seed||void 0,a=r.md||void 0,r.mgf1&&r.mgf1.md&&(c=r.mgf1.md)),a?a.start():a=n.md.sha1.create(),c||(c=a);var u=Math.ceil(e.n.bitLength()/8),f=u-2*a.digestLength-2;if(t.length>f)throw(g=new Error("RSAES-OAEP input message length is too long.")).length=t.length,g.maxLength=f,g;i||(i=""),a.update(i,"raw");for(var l=a.digest(),h="",d=f-t.length,p=0;p{var n=r(3832);r(8925),r(3068),r(33480),r(66270),r(26953),r(95496),r(49563),r(97116),r(25414);var i=n.asn1,o=e.exports=n.pkcs7=n.pkcs7||{};function s(e){var t={},r=[];if(!i.validate(e,o.asn1.recipientInfoValidator,t,r)){var s=new Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo.");throw s.errors=r,s}return{version:t.version.charCodeAt(0),issuer:n.pki.RDNAttributesAsArray(t.issuer),serialNumber:n.util.createBuffer(t.serial).toHex(),encryptedContent:{algorithm:i.derToOid(t.encAlgorithm),parameter:t.encParameter.value,content:t.encKey}}}function a(e){for(var t,r=[],o=0;o0){for(var r=i.create(i.Class.CONTEXT_SPECIFIC,1,!0,[]),o=0;o=r&&s0&&s.value[0].value.push(i.create(i.Class.CONTEXT_SPECIFIC,0,!0,t)),o.length>0&&s.value[0].value.push(i.create(i.Class.CONTEXT_SPECIFIC,1,!0,o)),s.value[0].value.push(i.create(i.Class.UNIVERSAL,i.Type.SET,!0,e.signerInfos)),i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[i.create(i.Class.UNIVERSAL,i.Type.OID,!1,i.oidToDer(e.type).getBytes()),s])},addSigner:function(t){var r=t.issuer,i=t.serialNumber;if(t.certificate){var o=t.certificate;"string"==typeof o&&(o=n.pki.certificateFromPem(o)),r=o.issuer.attributes,i=o.serialNumber}var s=t.key;if(!s)throw new Error("Could not add PKCS#7 signer; no private key specified.");"string"==typeof s&&(s=n.pki.privateKeyFromPem(s));var a=t.digestAlgorithm||n.pki.oids.sha1;switch(a){case n.pki.oids.sha1:case n.pki.oids.sha256:case n.pki.oids.sha384:case n.pki.oids.sha512:case n.pki.oids.md5:break;default:throw new Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+a)}var c=t.authenticatedAttributes||[];if(c.length>0){for(var u=!1,f=!1,l=0;l{var n=r(3832);r(3068),r(97116);var i=n.asn1,o=e.exports=n.pkcs7asn1=n.pkcs7asn1||{};n.pkcs7=n.pkcs7||{},n.pkcs7.asn1=o;var s={name:"ContentInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};o.contentInfoValidator=s;var a={name:"EncryptedContentInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:i.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};o.envelopedDataValidator={name:"EnvelopedData",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:i.Class.UNIVERSAL,type:i.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(a)},o.encryptedDataValidator={name:"EncryptedData",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"version"}].concat(a)};var c={name:"SignerInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:i.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:i.Class.UNIVERSAL,type:i.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:i.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]};o.signedDataValidator={name:"SignedData",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:i.Class.UNIVERSAL,type:i.Type.SET,constructed:!0,captureAsn1:"digestAlgorithms"},s,{name:"SignedData.Certificates",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:i.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:i.Class.UNIVERSAL,type:i.Type.SET,capture:"signerInfos",optional:!0,value:[c]}]},o.recipientInfoValidator={name:"RecipientInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:i.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter"}]},{name:"RecipientInfo.encryptedKey",tagClass:i.Class.UNIVERSAL,type:i.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}},29654:(e,t,r)=>{var n=r(3832);r(97116),r(15764),r(49563),function(){if(n.prime)e.exports=n.prime;else{var t=e.exports=n.prime=n.prime||{},r=n.jsbn.BigInteger,i=[6,4,2,4,2,4,6,2],o=new r(null);o.fromInt(30);var s=function(e,t){return e|t};t.generateProbablePrime=function(e,t,i){"function"==typeof t&&(i=t,t={});var o=(t=t||{}).algorithm||"PRIMEINC";"string"==typeof o&&(o={name:o}),o.options=o.options||{};var s=t.prng||n.random,c={nextBytes:function(e){for(var t=s.getBytesSync(e.length),r=0;re&&(s=u(e,t));var d=s.toString(16);i.target.postMessage({hex:d,workLoad:f}),s.dAddOffset(l,0)}}}d()}(e,t,i,o):a(e,t,i,o)}(e,c,o.options,i);throw new Error("Invalid prime generation algorithm: "+o.name)}}function a(e,t,r,n){var i=u(e,t),o=function(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}(i.bitLength());"millerRabinTests"in r&&(o=r.millerRabinTests);var s=10;"maxBlockTime"in r&&(s=r.maxBlockTime),c(i,e,t,0,o,s,n)}function c(e,t,r,o,s,a,f){var l=+new Date;do{if(e.bitLength()>t&&(e=u(t,r)),e.isProbablePrime(s))return f(null,e);e.dAddOffset(i[o++%8],0)}while(a<0||+new Date-l{var n=r(34155),i=r(3832);r(97116);var o=null;!i.util.isNodejs||i.options.usePureJavaScript||n.versions["node-webkit"]||(o=r(25819)),(e.exports=i.prng=i.prng||{}).create=function(e){for(var t={plugin:e,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},r=e.md,n=new Array(32),s=0;s<32;++s)n[s]=r.create();function a(){if(t.pools[0].messageLength>=32)return c();var e=32-t.pools[0].messageLength<<5;t.collect(t.seedFileSync(e)),c()}function c(){t.reseeds=4294967295===t.reseeds?0:t.reseeds+1;var e=t.plugin.md.create();e.update(t.keyBytes);for(var r=1,n=0;n<32;++n)t.reseeds%r==0&&(e.update(t.pools[n].digest().getBytes()),t.pools[n].start()),r<<=1;t.keyBytes=e.digest().getBytes(),e.start(),e.update(t.keyBytes);var i=e.digest().getBytes();t.key=t.plugin.formatKey(t.keyBytes),t.seed=t.plugin.formatSeed(i),t.generated=0}function u(e){var t=null,r=i.util.globalScope,n=r.crypto||r.msCrypto;n&&n.getRandomValues&&(t=function(e){return n.getRandomValues(e)});var o=i.util.createBuffer();if(t)for(;o.length()>16)))<<16,h=4294967295&(f=(2147483647&(f+=u>>15))+(f>>31)),c=0;c<3;++c)l=h>>>(c<<3),l^=Math.floor(256*Math.random()),o.putByte(String.fromCharCode(255&l));return o.getBytes(e)}return t.pools=n,t.pool=0,t.generate=function(e,r){if(!r)return t.generateSync(e);var n=t.plugin.cipher,o=t.plugin.increment,s=t.plugin.formatKey,a=t.plugin.formatSeed,u=i.util.createBuffer();t.key=null,function f(l){if(l)return r(l);if(u.length()>=e)return r(null,u.getBytes(e));if(t.generated>1048575&&(t.key=null),null===t.key)return i.util.nextTick((function(){!function(e){if(t.pools[0].messageLength>=32)return c(),e();var r=32-t.pools[0].messageLength<<5;t.seedFile(r,(function(r,n){if(r)return e(r);t.collect(n),c(),e()}))}(f)}));var h=n(t.key,t.seed);t.generated+=h.length,u.putBytes(h),t.key=s(n(t.key,o(t.seed))),t.seed=a(n(t.key,t.seed)),i.util.setImmediate(f)}()},t.generateSync=function(e){var r=t.plugin.cipher,n=t.plugin.increment,o=t.plugin.formatKey,s=t.plugin.formatSeed;t.key=null;for(var c=i.util.createBuffer();c.length()1048575&&(t.key=null),null===t.key&&a();var u=r(t.key,t.seed);t.generated+=u.length,c.putBytes(u),t.key=o(r(t.key,n(t.seed))),t.seed=s(r(t.key,t.seed))}return c.getBytes(e)},o?(t.seedFile=function(e,t){o.randomBytes(e,(function(e,r){if(e)return t(e);t(null,r.toString())}))},t.seedFileSync=function(e){return o.randomBytes(e).toString()}):(t.seedFile=function(e,t){try{t(null,u(e))}catch(e){t(e)}},t.seedFileSync=u),t.collect=function(e){for(var r=e.length,n=0;n>i&255);t.collect(n)},t.registerWorker=function(e){e===self?t.seedFile=function(e,t){self.addEventListener("message",(function e(r){var n=r.data;n.forge&&n.forge.prng&&(self.removeEventListener("message",e),t(n.forge.prng.err,n.forge.prng.bytes))})),self.postMessage({forge:{prng:{needed:e}}})}:e.addEventListener("message",(function(r){var n=r.data;n.forge&&n.forge.prng&&t.seedFile(n.forge.prng.needed,(function(t,r){e.postMessage({forge:{prng:{err:t,bytes:r}}})}))}))},t}},96007:(e,t,r)=>{var n=r(3832);r(49563),r(97116),(e.exports=n.pss=n.pss||{}).create=function(e){3===arguments.length&&(e={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var t,r=e.md,i=e.mgf,o=r.digestLength,s=e.salt||null;if("string"==typeof s&&(s=n.util.createBuffer(s)),"saltLength"in e)t=e.saltLength;else{if(null===s)throw new Error("Salt length not specified or specific salt not given.");t=s.length()}if(null!==s&&s.length()!==t)throw new Error("Given salt length does not match length of given salt.");var a=e.prng||n.random,c={encode:function(e,c){var u,f,l=c-1,h=Math.ceil(l/8),d=e.digest().getBytes();if(h>8*h-l&255;return(w=String.fromCharCode(w.charCodeAt(0)&~E)+w.substr(1))+y+String.fromCharCode(188)},verify:function(e,s,a){var c,u=a-1,f=Math.ceil(u/8);if(s=s.substr(-f),f>8*f-u&255;if(0!=(h.charCodeAt(0)&p))throw new Error("Bits beyond keysize not zero as expected.");var y=i.generate(d,l),g="";for(c=0;c{var n=r(3832);r(8925),r(41668),r(74933),r(97116),n.random&&n.random.getBytes?e.exports=n.random:function(t){var r={},i=new Array(4),o=n.util.createBuffer();function s(){var e=n.prng.create(r);return e.getBytes=function(t,r){return e.generate(t,r)},e.getBytesSync=function(t){return e.generate(t)},e}r.formatKey=function(e){var t=n.util.createBuffer(e);return(e=new Array(4))[0]=t.getInt32(),e[1]=t.getInt32(),e[2]=t.getInt32(),e[3]=t.getInt32(),n.aes._expandKey(e,!1)},r.formatSeed=function(e){var t=n.util.createBuffer(e);return(e=new Array(4))[0]=t.getInt32(),e[1]=t.getInt32(),e[2]=t.getInt32(),e[3]=t.getInt32(),e},r.cipher=function(e,t){return n.aes._updateBlock(e,t,i,!1),o.putInt32(i[0]),o.putInt32(i[1]),o.putInt32(i[2]),o.putInt32(i[3]),o.getBytes()},r.increment=function(e){return++e[3],e},r.md=n.md.sha256;var a=s(),c=null,u=n.util.globalScope,f=u.crypto||u.msCrypto;if(f&&f.getRandomValues&&(c=function(e){return f.getRandomValues(e)}),n.options.usePureJavaScript||!n.util.isNodejs&&!c){if("undefined"==typeof window||window.document,a.collectInt(+new Date,32),"undefined"!=typeof navigator){var l="";for(var h in navigator)try{"string"==typeof navigator[h]&&(l+=navigator[h])}catch(e){}a.collect(l),l=null}t&&(t().mousemove((function(e){a.collectInt(e.clientX,16),a.collectInt(e.clientY,16)})),t().keypress((function(e){a.collectInt(e.charCode,8)})))}if(n.random)for(var h in a)n.random[h]=a[h];else n.random=a;n.random.createInstance=s,e.exports=n.random}("undefined"!=typeof jQuery?jQuery:null)},69372:(e,t,r)=>{var n=r(3832);r(97116);var i=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],o=[1,2,3,5],s=function(e,t){return e<>16-t},a=function(e,t){return(65535&e)>>t|e<<16-t&65535};e.exports=n.rc2=n.rc2||{},n.rc2.expandKey=function(e,t){"string"==typeof e&&(e=n.util.createBuffer(e)),t=t||128;var r,o=e,s=e.length(),a=t,c=Math.ceil(a/8),u=255>>(7&a);for(r=s;r<128;r++)o.putByte(i[o.at(r-1)+o.at(r-s)&255]);for(o.setAt(128-c,i[o.at(128-c)&u]),r=127-c;r>=0;r--)o.setAt(r,i[o.at(r+1)^o.at(r+c)]);return o};var c=function(e,t,r){var i,c,u,f,l=!1,h=null,d=null,p=null,y=[];for(e=n.rc2.expandKey(e,t),u=0;u<64;u++)y.push(e.getInt16Le());r?(i=function(e){for(u=0;u<4;u++)e[u]+=y[f]+(e[(u+3)%4]&e[(u+2)%4])+(~e[(u+3)%4]&e[(u+1)%4]),e[u]=s(e[u],o[u]),f++},c=function(e){for(u=0;u<4;u++)e[u]+=y[63&e[(u+3)%4]]}):(i=function(e){for(u=3;u>=0;u--)e[u]=a(e[u],o[u]),e[u]-=y[f]+(e[(u+3)%4]&e[(u+2)%4])+(~e[(u+3)%4]&e[(u+1)%4]),f--},c=function(e){for(u=3;u>=0;u--)e[u]-=y[63&e[(u+3)%4]]});var g=function(e){var t=[];for(u=0;u<4;u++){var n=h.getInt16Le();null!==p&&(r?n^=p.getInt16Le():p.putInt16Le(n)),t.push(65535&n)}f=r?0:63;for(var i=0;i=8;)g([[5,i],[1,c],[6,i],[1,c],[5,i]])},finish:function(e){var t=!0;if(r)if(e)t=e(8,h,!r);else{var n=8===h.length()?8:8-h.length();h.fillWithByte(n,n)}if(t&&(l=!0,b.update()),!r&&(t=0===h.length()))if(e)t=e(8,d,!r);else{var i=d.length(),o=d.at(i-1);o>i?t=!1:d.truncate(o)}return t}}};n.rc2.startEncrypting=function(e,t,r){var i=n.rc2.createEncryptionCipher(e,128);return i.start(t,r),i},n.rc2.createEncryptionCipher=function(e,t){return c(e,t,!0)},n.rc2.startDecrypting=function(e,t,r){var i=n.rc2.createDecryptionCipher(e,128);return i.start(t,r),i},n.rc2.createDecryptionCipher=function(e,t){return c(e,t,!1)}},28095:(e,t,r)=>{var n=r(3832);if(r(3068),r(15764),r(66270),r(18936),r(29654),r(49563),r(97116),void 0===i)var i=n.jsbn.BigInteger;var o=n.util.isNodejs?r(25819):null,s=n.asn1,a=n.util;n.pki=n.pki||{},e.exports=n.pki.rsa=n.rsa=n.rsa||{};var c=n.pki,u=[6,4,2,4,2,4,6,2],f={name:"PrivateKeyInfo",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:s.Class.UNIVERSAL,type:s.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:s.Class.UNIVERSAL,type:s.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},l={name:"RSAPrivateKey",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},h={name:"RSAPublicKey",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:s.Class.UNIVERSAL,type:s.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},d=n.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:s.Class.UNIVERSAL,type:s.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:s.Class.UNIVERSAL,type:s.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:s.Class.UNIVERSAL,type:s.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},p=function(e){var t;if(!(e.algorithm in c.oids)){var r=new Error("Unknown message digest algorithm.");throw r.algorithm=e.algorithm,r}t=c.oids[e.algorithm];var n=s.oidToDer(t).getBytes(),i=s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[]),o=s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[]);o.value.push(s.create(s.Class.UNIVERSAL,s.Type.OID,!1,n)),o.value.push(s.create(s.Class.UNIVERSAL,s.Type.NULL,!1,""));var a=s.create(s.Class.UNIVERSAL,s.Type.OCTETSTRING,!1,e.digest().getBytes());return i.value.push(o),i.value.push(a),s.toDer(i).getBytes()},y=function(e,t,r){if(r)return e.modPow(t.e,t.n);if(!t.p||!t.q)return e.modPow(t.d,t.n);var o;t.dP||(t.dP=t.d.mod(t.p.subtract(i.ONE))),t.dQ||(t.dQ=t.d.mod(t.q.subtract(i.ONE))),t.qInv||(t.qInv=t.q.modInverse(t.p));do{o=new i(n.util.bytesToHex(n.random.getBytes(t.n.bitLength()/8)),16)}while(o.compareTo(t.n)>=0||!o.gcd(t.n).equals(i.ONE));for(var s=(e=e.multiply(o.modPow(t.e,t.n)).mod(t.n)).mod(t.p).modPow(t.dP,t.p),a=e.mod(t.q).modPow(t.dQ,t.q);s.compareTo(a)<0;)s=s.add(t.p);var c=s.subtract(a).multiply(t.qInv).mod(t.p).multiply(t.q).add(a);return c.multiply(o.modInverse(t.n)).mod(t.n)};function g(e,t,r){var i=n.util.createBuffer(),o=Math.ceil(t.n.bitLength()/8);if(e.length>o-11){var s=new Error("Message is too long for PKCS#1 v1.5 padding.");throw s.length=e.length,s.max=o-11,s}i.putByte(0),i.putByte(r);var a,c=o-3-e.length;if(0===r||1===r){a=0===r?0:255;for(var u=0;u0;){var f=0,l=n.random.getBytes(c);for(u=0;u1;){if(255!==s.getByte()){--s.read;break}++u}else if(2===c)for(u=0;s.length()>1;){if(0===s.getByte()){--s.read;break}++u}if(0!==s.getByte()||u!==o-3-s.length())throw new Error("Encryption block is invalid.");return s.getBytes()}function m(e,t,r){"function"==typeof t&&(r=t,t={});var o={algorithm:{name:(t=t||{}).algorithm||"PRIMEINC",options:{workers:t.workers||2,workLoad:t.workLoad||100,workerScript:t.workerScript}}};function s(){a(e.pBits,(function(t,n){return t?r(t):(e.p=n,null!==e.q?u(t,e.q):void a(e.qBits,u))}))}function a(e,t){n.prime.generateProbablePrime(e,o,t)}function u(t,n){if(t)return r(t);if(e.q=n,e.p.compareTo(e.q)<0){var o=e.p;e.p=e.q,e.q=o}if(0!==e.p.subtract(i.ONE).gcd(e.e).compareTo(i.ONE))return e.p=null,void s();if(0!==e.q.subtract(i.ONE).gcd(e.e).compareTo(i.ONE))return e.q=null,void a(e.qBits,u);if(e.p1=e.p.subtract(i.ONE),e.q1=e.q.subtract(i.ONE),e.phi=e.p1.multiply(e.q1),0!==e.phi.gcd(e.e).compareTo(i.ONE))return e.p=e.q=null,void s();if(e.n=e.p.multiply(e.q),e.n.bitLength()!==e.bits)return e.q=null,void a(e.qBits,u);var f=e.e.modInverse(e.phi);e.keys={privateKey:c.rsa.setPrivateKey(e.n,e.e,f,e.p,e.q,f.mod(e.p1),f.mod(e.q1),e.q.modInverse(e.p)),publicKey:c.rsa.setPublicKey(e.n,e.e)},r(null,e.keys)}"prng"in t&&(o.prng=t.prng),s()}function v(e){var t=e.toString(16);t[0]>="8"&&(t="00"+t);var r=n.util.hexToBytes(t);return r.length>1&&(0===r.charCodeAt(0)&&0==(128&r.charCodeAt(1))||255===r.charCodeAt(0)&&128==(128&r.charCodeAt(1)))?r.substr(1):r}function w(e){return e<=100?27:e<=150?18:e<=200?15:e<=250?12:e<=300?9:e<=350?8:e<=400?7:e<=500?6:e<=600?5:e<=800?4:e<=1250?3:2}function E(e){return n.util.isNodejs&&"function"==typeof o[e]}function _(e){return void 0!==a.globalScope&&"object"==typeof a.globalScope.crypto&&"object"==typeof a.globalScope.crypto.subtle&&"function"==typeof a.globalScope.crypto.subtle[e]}function S(e){return void 0!==a.globalScope&&"object"==typeof a.globalScope.msCrypto&&"object"==typeof a.globalScope.msCrypto.subtle&&"function"==typeof a.globalScope.msCrypto.subtle[e]}function A(e){for(var t=n.util.hexToBytes(e.toString(16)),r=new Uint8Array(t.length),i=0;i0;)f.putByte(0),--l;return f.putBytes(n.util.hexToBytes(u)),f.getBytes()},c.rsa.decrypt=function(e,t,r,o){var s=Math.ceil(t.n.bitLength()/8);if(e.length!==s){var a=new Error("Encrypted message length is invalid.");throw a.length=e.length,a.expected=s,a}var c=new i(n.util.createBuffer(e).toHex(),16);if(c.compareTo(t.n)>=0)throw new Error("Encrypted message is invalid.");for(var u=y(c,t,r).toString(16),f=n.util.createBuffer(),l=s-Math.ceil(u.length/2);l>0;)f.putByte(0),--l;return f.putBytes(n.util.hexToBytes(u)),!1!==o?b(f.getBytes(),t,r):f.getBytes()},c.rsa.createKeyPairGenerationState=function(e,t,r){"string"==typeof e&&(e=parseInt(e,10)),e=e||2048;var o,s=(r=r||{}).prng||n.random,a={nextBytes:function(e){for(var t=s.getBytesSync(e.length),r=0;r>1,pBits:e-(e>>1),pqState:0,num:null,keys:null}).e.fromInt(o.eInt),o},c.rsa.stepKeyPairGenerationState=function(e,t){"algorithm"in e||(e.algorithm="PRIMEINC");var r=new i(null);r.fromInt(30);for(var n,o=0,s=function(e,t){return e|t},a=+new Date,f=0;null===e.keys&&(t<=0||fl?e.pqState=0:e.num.isProbablePrime(w(e.num.bitLength()))?++e.pqState:e.num.dAddOffset(u[o++%8],0):2===e.pqState?e.pqState=0===e.num.subtract(i.ONE).gcd(e.e).compareTo(i.ONE)?3:0:3===e.pqState&&(e.pqState=0,null===e.p?e.p=e.num:e.q=e.num,null!==e.p&&null!==e.q&&++e.state,e.num=null)}else if(1===e.state)e.p.compareTo(e.q)<0&&(e.num=e.p,e.p=e.q,e.q=e.num),++e.state;else if(2===e.state)e.p1=e.p.subtract(i.ONE),e.q1=e.q.subtract(i.ONE),e.phi=e.p1.multiply(e.q1),++e.state;else if(3===e.state)0===e.phi.gcd(e.e).compareTo(i.ONE)?++e.state:(e.p=null,e.q=null,e.state=0);else if(4===e.state)e.n=e.p.multiply(e.q),e.n.bitLength()===e.bits?++e.state:(e.q=null,e.state=0);else if(5===e.state){var d=e.e.modInverse(e.phi);e.keys={privateKey:c.rsa.setPrivateKey(e.n,e.e,d,e.p,e.q,d.mod(e.p1),d.mod(e.q1),e.q.modInverse(e.p)),publicKey:c.rsa.setPublicKey(e.n,e.e)}}f+=(n=+new Date)-a,a=n}return null!==e.keys},c.rsa.generateKeyPair=function(e,t,r,i){if(1===arguments.length?"object"==typeof e?(r=e,e=void 0):"function"==typeof e&&(i=e,e=void 0):2===arguments.length?"number"==typeof e?"function"==typeof t?(i=t,t=void 0):"number"!=typeof t&&(r=t,t=void 0):(r=e,i=t,e=void 0,t=void 0):3===arguments.length&&("number"==typeof t?"function"==typeof r&&(i=r,r=void 0):(i=r,r=t,t=void 0)),r=r||{},void 0===e&&(e=r.bits||2048),void 0===t&&(t=r.e||65537),!n.options.usePureJavaScript&&!r.prng&&e>=256&&e<=16384&&(65537===t||3===t))if(i){if(E("generateKeyPair"))return o.generateKeyPair("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},(function(e,t,r){if(e)return i(e);i(null,{privateKey:c.privateKeyFromPem(r),publicKey:c.publicKeyFromPem(t)})}));if(_("generateKey")&&_("exportKey"))return a.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:A(t),hash:{name:"SHA-256"}},!0,["sign","verify"]).then((function(e){return a.globalScope.crypto.subtle.exportKey("pkcs8",e.privateKey)})).then(void 0,(function(e){i(e)})).then((function(e){if(e){var t=c.privateKeyFromAsn1(s.fromDer(n.util.createBuffer(e)));i(null,{privateKey:t,publicKey:c.setRsaPublicKey(t.n,t.e)})}}));if(S("generateKey")&&S("exportKey")){var u=a.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:e,publicExponent:A(t),hash:{name:"SHA-256"}},!0,["sign","verify"]);return u.oncomplete=function(e){var t=e.target.result,r=a.globalScope.msCrypto.subtle.exportKey("pkcs8",t.privateKey);r.oncomplete=function(e){var t=e.target.result,r=c.privateKeyFromAsn1(s.fromDer(n.util.createBuffer(t)));i(null,{privateKey:r,publicKey:c.setRsaPublicKey(r.n,r.e)})},r.onerror=function(e){i(e)}},void(u.onerror=function(e){i(e)})}}else if(E("generateKeyPairSync")){var f=o.generateKeyPairSync("rsa",{modulusLength:e,publicExponent:t,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:c.privateKeyFromPem(f.privateKey),publicKey:c.publicKeyFromPem(f.publicKey)}}var l=c.rsa.createKeyPairGenerationState(e,t,r);if(!i)return c.rsa.stepKeyPairGenerationState(l,0),l.keys;m(l,r,i)},c.setRsaPublicKey=c.rsa.setPublicKey=function(e,t){var r={n:e,e:t,encrypt:function(e,t,i){if("string"==typeof t?t=t.toUpperCase():void 0===t&&(t="RSAES-PKCS1-V1_5"),"RSAES-PKCS1-V1_5"===t)t={encode:function(e,t,r){return g(e,t,2).getBytes()}};else if("RSA-OAEP"===t||"RSAES-OAEP"===t)t={encode:function(e,t){return n.pkcs1.encode_rsa_oaep(t,e,i)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(t))t={encode:function(e){return e}};else if("string"==typeof t)throw new Error('Unsupported encryption scheme: "'+t+'".');var o=t.encode(e,r,!0);return c.rsa.encrypt(o,r,!0)},verify:function(e,t,n){"string"==typeof n?n=n.toUpperCase():void 0===n&&(n="RSASSA-PKCS1-V1_5"),"RSASSA-PKCS1-V1_5"===n?n={verify:function(e,t){return t=b(t,r,!0),e===s.fromDer(t).value[1].value}}:"NONE"!==n&&"NULL"!==n&&null!==n||(n={verify:function(e,t){return e===b(t,r,!0)}});var i=c.rsa.decrypt(t,r,!0,!1);return n.verify(e,i,r.n.bitLength())}};return r},c.setRsaPrivateKey=c.rsa.setPrivateKey=function(e,t,r,i,o,s,a,u){var f={n:e,e:t,d:r,p:i,q:o,dP:s,dQ:a,qInv:u,decrypt:function(e,t,r){"string"==typeof t?t=t.toUpperCase():void 0===t&&(t="RSAES-PKCS1-V1_5");var i=c.rsa.decrypt(e,f,!1,!1);if("RSAES-PKCS1-V1_5"===t)t={decode:b};else if("RSA-OAEP"===t||"RSAES-OAEP"===t)t={decode:function(e,t){return n.pkcs1.decode_rsa_oaep(t,e,r)}};else{if(-1===["RAW","NONE","NULL",null].indexOf(t))throw new Error('Unsupported encryption scheme: "'+t+'".');t={decode:function(e){return e}}}return t.decode(i,f,!1)},sign:function(e,t){var r=!1;"string"==typeof t&&(t=t.toUpperCase()),void 0===t||"RSASSA-PKCS1-V1_5"===t?(t={encode:p},r=1):"NONE"!==t&&"NULL"!==t&&null!==t||(t={encode:function(){return e}},r=1);var n=t.encode(e,f.n.bitLength());return c.rsa.encrypt(n,f,r)}};return f},c.wrapRsaPrivateKey=function(e){return s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,s.integerToDer(0).getBytes()),s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.OID,!1,s.oidToDer(c.oids.rsaEncryption).getBytes()),s.create(s.Class.UNIVERSAL,s.Type.NULL,!1,"")]),s.create(s.Class.UNIVERSAL,s.Type.OCTETSTRING,!1,s.toDer(e).getBytes())])},c.privateKeyFromAsn1=function(e){var t,r,o,a,u,h,d,p,y={},g=[];if(s.validate(e,f,y,g)&&(e=s.fromDer(n.util.createBuffer(y.privateKey))),y={},g=[],!s.validate(e,l,y,g)){var b=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw b.errors=g,b}return t=n.util.createBuffer(y.privateKeyModulus).toHex(),r=n.util.createBuffer(y.privateKeyPublicExponent).toHex(),o=n.util.createBuffer(y.privateKeyPrivateExponent).toHex(),a=n.util.createBuffer(y.privateKeyPrime1).toHex(),u=n.util.createBuffer(y.privateKeyPrime2).toHex(),h=n.util.createBuffer(y.privateKeyExponent1).toHex(),d=n.util.createBuffer(y.privateKeyExponent2).toHex(),p=n.util.createBuffer(y.privateKeyCoefficient).toHex(),c.setRsaPrivateKey(new i(t,16),new i(r,16),new i(o,16),new i(a,16),new i(u,16),new i(h,16),new i(d,16),new i(p,16))},c.privateKeyToAsn1=c.privateKeyToRSAPrivateKey=function(e){return s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,s.integerToDer(0).getBytes()),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.n)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.e)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.d)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.p)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.q)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.dP)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.dQ)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.qInv))])},c.publicKeyFromAsn1=function(e){var t={},r=[];if(s.validate(e,d,t,r)){var o,a=s.derToOid(t.publicKeyOid);if(a!==c.oids.rsaEncryption)throw(o=new Error("Cannot read public key. Unknown OID.")).oid=a,o;e=t.rsaPublicKey}if(r=[],!s.validate(e,h,t,r))throw(o=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.")).errors=r,o;var u=n.util.createBuffer(t.publicKeyModulus).toHex(),f=n.util.createBuffer(t.publicKeyExponent).toHex();return c.setRsaPublicKey(new i(u,16),new i(f,16))},c.publicKeyToAsn1=c.publicKeyToSubjectPublicKeyInfo=function(e){return s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.OID,!1,s.oidToDer(c.oids.rsaEncryption).getBytes()),s.create(s.Class.UNIVERSAL,s.Type.NULL,!1,"")]),s.create(s.Class.UNIVERSAL,s.Type.BITSTRING,!1,[c.publicKeyToRSAPublicKey(e)])])},c.publicKeyToRSAPublicKey=function(e){return s.create(s.Class.UNIVERSAL,s.Type.SEQUENCE,!0,[s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.n)),s.create(s.Class.UNIVERSAL,s.Type.INTEGER,!1,v(e.e))])}},137:(e,t,r)=>{var n=r(3832);r(28991),r(97116);var i=e.exports=n.sha1=n.sha1||{};n.md.sha1=n.md.algorithms.sha1=i,i.create=function(){s||(o=String.fromCharCode(128),o+=n.util.fillString(String.fromCharCode(0),64),s=!0);var e=null,t=n.util.createBuffer(),r=new Array(80),i={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){i.messageLength=0,i.fullMessageLength=i.messageLength64=[];for(var r=i.messageLengthSize/4,o=0;o>>0,c>>>0];for(var u=i.fullMessageLength.length-1;u>=0;--u)i.fullMessageLength[u]+=c[1],c[1]=c[0]+(i.fullMessageLength[u]/4294967296>>>0),i.fullMessageLength[u]=i.fullMessageLength[u]>>>0,c[0]=c[1]/4294967296>>>0;return t.putBytes(o),a(e,r,t),(t.read>2048||0===t.length())&&t.compact(),i},i.digest=function(){var s=n.util.createBuffer();s.putBytes(t.bytes());var c,u=i.fullMessageLength[i.fullMessageLength.length-1]+i.messageLengthSize&i.blockLength-1;s.putBytes(o.substr(0,i.blockLength-u));for(var f=8*i.fullMessageLength[0],l=0;l>>0,s.putInt32(f>>>0),f=c>>>0;s.putInt32(f);var h={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4};a(h,r,s);var d=n.util.createBuffer();return d.putInt32(h.h0),d.putInt32(h.h1),d.putInt32(h.h2),d.putInt32(h.h3),d.putInt32(h.h4),d},i};var o=null,s=!1;function a(e,t,r){for(var n,i,o,s,a,c,u,f=r.length();f>=64;){for(i=e.h0,o=e.h1,s=e.h2,a=e.h3,c=e.h4,u=0;u<16;++u)n=r.getInt32(),t[u]=n,n=(i<<5|i>>>27)+(a^o&(s^a))+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<20;++u)n=(n=t[u-3]^t[u-8]^t[u-14]^t[u-16])<<1|n>>>31,t[u]=n,n=(i<<5|i>>>27)+(a^o&(s^a))+c+1518500249+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<32;++u)n=(n=t[u-3]^t[u-8]^t[u-14]^t[u-16])<<1|n>>>31,t[u]=n,n=(i<<5|i>>>27)+(o^s^a)+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<40;++u)n=(n=t[u-6]^t[u-16]^t[u-28]^t[u-32])<<2|n>>>30,t[u]=n,n=(i<<5|i>>>27)+(o^s^a)+c+1859775393+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<60;++u)n=(n=t[u-6]^t[u-16]^t[u-28]^t[u-32])<<2|n>>>30,t[u]=n,n=(i<<5|i>>>27)+(o&s|a&(o^s))+c+2400959708+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;for(;u<80;++u)n=(n=t[u-6]^t[u-16]^t[u-28]^t[u-32])<<2|n>>>30,t[u]=n,n=(i<<5|i>>>27)+(o^s^a)+c+3395469782+n,c=a,a=s,s=(o<<30|o>>>2)>>>0,o=i,i=n;e.h0=e.h0+i|0,e.h1=e.h1+o|0,e.h2=e.h2+s|0,e.h3=e.h3+a|0,e.h4=e.h4+c|0,f-=64}}},41668:(e,t,r)=>{var n=r(3832);r(28991),r(97116);var i=e.exports=n.sha256=n.sha256||{};n.md.sha256=n.md.algorithms.sha256=i,i.create=function(){s||(o=String.fromCharCode(128),o+=n.util.fillString(String.fromCharCode(0),64),a=[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],s=!0);var e=null,t=n.util.createBuffer(),r=new Array(64),i={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8,start:function(){i.messageLength=0,i.fullMessageLength=i.messageLength64=[];for(var r=i.messageLengthSize/4,o=0;o>>0,a>>>0];for(var u=i.fullMessageLength.length-1;u>=0;--u)i.fullMessageLength[u]+=a[1],a[1]=a[0]+(i.fullMessageLength[u]/4294967296>>>0),i.fullMessageLength[u]=i.fullMessageLength[u]>>>0,a[0]=a[1]/4294967296>>>0;return t.putBytes(o),c(e,r,t),(t.read>2048||0===t.length())&&t.compact(),i},i.digest=function(){var s=n.util.createBuffer();s.putBytes(t.bytes());var a,u=i.fullMessageLength[i.fullMessageLength.length-1]+i.messageLengthSize&i.blockLength-1;s.putBytes(o.substr(0,i.blockLength-u));for(var f=8*i.fullMessageLength[0],l=0;l>>0,s.putInt32(f>>>0),f=a>>>0;s.putInt32(f);var h={h0:e.h0,h1:e.h1,h2:e.h2,h3:e.h3,h4:e.h4,h5:e.h5,h6:e.h6,h7:e.h7};c(h,r,s);var d=n.util.createBuffer();return d.putInt32(h.h0),d.putInt32(h.h1),d.putInt32(h.h2),d.putInt32(h.h3),d.putInt32(h.h4),d.putInt32(h.h5),d.putInt32(h.h6),d.putInt32(h.h7),d},i};var o=null,s=!1,a=null;function c(e,t,r){for(var n,i,o,s,c,u,f,l,h,d,p,y,g,b=r.length();b>=64;){for(c=0;c<16;++c)t[c]=r.getInt32();for(;c<64;++c)n=((n=t[c-2])>>>17|n<<15)^(n>>>19|n<<13)^n>>>10,i=((i=t[c-15])>>>7|i<<25)^(i>>>18|i<<14)^i>>>3,t[c]=n+t[c-7]+i+t[c-16]|0;for(u=e.h0,f=e.h1,l=e.h2,h=e.h3,d=e.h4,p=e.h5,y=e.h6,g=e.h7,c=0;c<64;++c)o=(u>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),s=u&f|l&(u^f),n=g+((d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7))+(y^d&(p^y))+a[c]+t[c],g=y,y=p,p=d,d=h+n>>>0,h=l,l=f,f=u,u=n+(i=o+s)>>>0;e.h0=e.h0+u|0,e.h1=e.h1+f|0,e.h2=e.h2+l|0,e.h3=e.h3+h|0,e.h4=e.h4+d|0,e.h5=e.h5+p|0,e.h6=e.h6+y|0,e.h7=e.h7+g|0,b-=64}}},63219:(e,t,r)=>{var n=r(3832);r(28991),r(97116);var i=e.exports=n.sha512=n.sha512||{};n.md.sha512=n.md.algorithms.sha512=i;var o=n.sha384=n.sha512.sha384=n.sha512.sha384||{};o.create=function(){return i.create("SHA-384")},n.md.sha384=n.md.algorithms.sha384=o,n.sha512.sha256=n.sha512.sha256||{create:function(){return i.create("SHA-512/256")}},n.md["sha512/256"]=n.md.algorithms["sha512/256"]=n.sha512.sha256,n.sha512.sha224=n.sha512.sha224||{create:function(){return i.create("SHA-512/224")}},n.md["sha512/224"]=n.md.algorithms["sha512/224"]=n.sha512.sha224,i.create=function(e){if(a||(s=String.fromCharCode(128),s+=n.util.fillString(String.fromCharCode(0),128),c=[[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]],(u={})["SHA-512"]=[[1779033703,4089235720],[3144134277,2227873595],[1013904242,4271175723],[2773480762,1595750129],[1359893119,2917565137],[2600822924,725511199],[528734635,4215389547],[1541459225,327033209]],u["SHA-384"]=[[3418070365,3238371032],[1654270250,914150663],[2438529370,812702999],[355462360,4144912697],[1731405415,4290775857],[2394180231,1750603025],[3675008525,1694076839],[1203062813,3204075428]],u["SHA-512/256"]=[[573645204,4230739756],[2673172387,3360449730],[596883563,1867755857],[2520282905,1497426621],[2519219938,2827943907],[3193839141,1401305490],[721525244,746961066],[246885852,2177182882]],u["SHA-512/224"]=[[2352822216,424955298],[1944164710,2312950998],[502970286,855612546],[1738396948,1479516111],[258812777,2077511080],[2011393907,79989058],[1067287976,1780299464],[286451373,2446758561]],a=!0),void 0===e&&(e="SHA-512"),!(e in u))throw new Error("Invalid SHA-512 algorithm: "+e);for(var t=u[e],r=null,i=n.util.createBuffer(),o=new Array(80),l=0;l<80;++l)o[l]=new Array(2);var h=64;switch(e){case"SHA-384":h=48;break;case"SHA-512/256":h=32;break;case"SHA-512/224":h=28}var d={algorithm:e.replace("-","").toLowerCase(),blockLength:128,digestLength:h,messageLength:0,fullMessageLength:null,messageLengthSize:16,start:function(){d.messageLength=0,d.fullMessageLength=d.messageLength128=[];for(var e=d.messageLengthSize/4,o=0;o>>0,s>>>0];for(var a=d.fullMessageLength.length-1;a>=0;--a)d.fullMessageLength[a]+=s[1],s[1]=s[0]+(d.fullMessageLength[a]/4294967296>>>0),d.fullMessageLength[a]=d.fullMessageLength[a]>>>0,s[0]=s[1]/4294967296>>>0;return i.putBytes(e),f(r,o,i),(i.read>2048||0===i.length())&&i.compact(),d},d.digest=function(){var t=n.util.createBuffer();t.putBytes(i.bytes());var a,c=d.fullMessageLength[d.fullMessageLength.length-1]+d.messageLengthSize&d.blockLength-1;t.putBytes(s.substr(0,d.blockLength-c));for(var u=8*d.fullMessageLength[0],l=0;l>>0,t.putInt32(u>>>0),u=a>>>0;t.putInt32(u);var h=new Array(r.length);for(l=0;l=128;){for(k=0;k<16;++k)t[k][0]=r.getInt32()>>>0,t[k][1]=r.getInt32()>>>0;for(;k<80;++k)n=(((B=(M=t[k-2])[0])>>>19|(x=M[1])<<13)^(x>>>29|B<<3)^B>>>6)>>>0,i=((B<<13|x>>>19)^(x<<3|B>>>29)^(B<<26|x>>>6))>>>0,o=(((B=(N=t[k-15])[0])>>>1|(x=N[1])<<31)^(B>>>8|x<<24)^B>>>7)>>>0,s=((B<<31|x>>>1)^(B<<24|x>>>8)^(B<<25|x>>>7))>>>0,O=t[k-7],L=t[k-16],x=i+O[1]+s+L[1],t[k][0]=n+O[0]+o+L[0]+(x/4294967296>>>0)>>>0,t[k][1]=x>>>0;for(p=e[0][0],y=e[0][1],g=e[1][0],b=e[1][1],m=e[2][0],v=e[2][1],w=e[3][0],E=e[3][1],_=e[4][0],S=e[4][1],A=e[5][0],T=e[5][1],I=e[6][0],C=e[6][1],P=e[7][0],R=e[7][1],k=0;k<80;++k)f=((_>>>14|S<<18)^(_>>>18|S<<14)^(S>>>9|_<<23))>>>0,l=(I^_&(A^I))>>>0,a=((p>>>28|y<<4)^(y>>>2|p<<30)^(y>>>7|p<<25))>>>0,u=((p<<4|y>>>28)^(y<<30|p>>>2)^(y<<25|p>>>7))>>>0,h=(p&g|m&(p^g))>>>0,d=(y&b|v&(y^b))>>>0,x=R+(((_<<18|S>>>14)^(_<<14|S>>>18)^(S<<23|_>>>9))>>>0)+((C^S&(T^C))>>>0)+c[k][1]+t[k][1],n=P+f+l+c[k][0]+t[k][0]+(x/4294967296>>>0)>>>0,i=x>>>0,o=a+h+((x=u+d)/4294967296>>>0)>>>0,s=x>>>0,P=I,R=C,I=A,C=T,A=_,T=S,_=w+n+((x=E+i)/4294967296>>>0)>>>0,S=x>>>0,w=m,E=v,m=g,v=b,g=p,b=y,p=n+o+((x=i+s)/4294967296>>>0)>>>0,y=x>>>0;x=e[0][1]+y,e[0][0]=e[0][0]+p+(x/4294967296>>>0)>>>0,e[0][1]=x>>>0,x=e[1][1]+b,e[1][0]=e[1][0]+g+(x/4294967296>>>0)>>>0,e[1][1]=x>>>0,x=e[2][1]+v,e[2][0]=e[2][0]+m+(x/4294967296>>>0)>>>0,e[2][1]=x>>>0,x=e[3][1]+E,e[3][0]=e[3][0]+w+(x/4294967296>>>0)>>>0,e[3][1]=x>>>0,x=e[4][1]+S,e[4][0]=e[4][0]+_+(x/4294967296>>>0)>>>0,e[4][1]=x>>>0,x=e[5][1]+T,e[5][0]=e[5][0]+A+(x/4294967296>>>0)>>>0,e[5][1]=x>>>0,x=e[6][1]+C,e[6][0]=e[6][0]+I+(x/4294967296>>>0)>>>0,e[6][1]=x>>>0,x=e[7][1]+R,e[7][0]=e[7][0]+P+(x/4294967296>>>0)>>>0,e[7][1]=x>>>0,D-=128}}},97116:(e,t,r)=>{var n=r(34155),i=r(3832),o=r(78807),s=e.exports=i.util=i.util||{};function a(e){if(8!==e&&16!==e&&24!==e&&32!==e)throw new Error("Only 8, 16, 24, or 32 bits supported: "+e)}function c(e){if(this.data="",this.read=0,"string"==typeof e)this.data=e;else if(s.isArrayBuffer(e)||s.isArrayBufferView(e))if("undefined"!=typeof Buffer&&e instanceof Buffer)this.data=e.toString("binary");else{var t=new Uint8Array(e);try{this.data=String.fromCharCode.apply(null,t)}catch(e){for(var r=0;r15?(r=Date.now(),a(e)):(t.push(e),1===t.length&&o.setAttribute("a",i=!i))}}s.nextTick=s.setImmediate}(),s.isNodejs=void 0!==n&&n.versions&&n.versions.node,s.globalScope=s.isNodejs?r.g:"undefined"==typeof self?window:self,s.isArray=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},s.isArrayBuffer=function(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer},s.isArrayBufferView=function(e){return e&&s.isArrayBuffer(e.buffer)&&void 0!==e.byteLength},s.ByteBuffer=c,s.ByteStringBuffer=c,s.ByteStringBuffer.prototype._optimizeConstructedString=function(e){this._constructedStringLength+=e,this._constructedStringLength>4096&&(this.data.substr(0,1),this._constructedStringLength=0)},s.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read},s.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0},s.ByteStringBuffer.prototype.putByte=function(e){return this.putBytes(String.fromCharCode(e))},s.ByteStringBuffer.prototype.fillWithByte=function(e,t){e=String.fromCharCode(e);for(var r=this.data;t>0;)1&t&&(r+=e),(t>>>=1)>0&&(e+=e);return this.data=r,this._optimizeConstructedString(t),this},s.ByteStringBuffer.prototype.putBytes=function(e){return this.data+=e,this._optimizeConstructedString(e.length),this},s.ByteStringBuffer.prototype.putString=function(e){return this.putBytes(s.encodeUtf8(e))},s.ByteStringBuffer.prototype.putInt16=function(e){return this.putBytes(String.fromCharCode(e>>8&255)+String.fromCharCode(255&e))},s.ByteStringBuffer.prototype.putInt24=function(e){return this.putBytes(String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e))},s.ByteStringBuffer.prototype.putInt32=function(e){return this.putBytes(String.fromCharCode(e>>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e))},s.ByteStringBuffer.prototype.putInt16Le=function(e){return this.putBytes(String.fromCharCode(255&e)+String.fromCharCode(e>>8&255))},s.ByteStringBuffer.prototype.putInt24Le=function(e){return this.putBytes(String.fromCharCode(255&e)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255))},s.ByteStringBuffer.prototype.putInt32Le=function(e){return this.putBytes(String.fromCharCode(255&e)+String.fromCharCode(e>>8&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>24&255))},s.ByteStringBuffer.prototype.putInt=function(e,t){a(t);var r="";do{t-=8,r+=String.fromCharCode(e>>t&255)}while(t>0);return this.putBytes(r)},s.ByteStringBuffer.prototype.putSignedInt=function(e,t){return e<0&&(e+=2<0);return t},s.ByteStringBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<=r&&(t-=r<<1),t},s.ByteStringBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):0===e?t="":(t=0===this.read?this.data:this.data.slice(this.read),this.clear()),t},s.ByteStringBuffer.prototype.bytes=function(e){return void 0===e?this.data.slice(this.read):this.data.slice(this.read,this.read+e)},s.ByteStringBuffer.prototype.at=function(e){return this.data.charCodeAt(this.read+e)},s.ByteStringBuffer.prototype.setAt=function(e,t){return this.data=this.data.substr(0,this.read+e)+String.fromCharCode(t)+this.data.substr(this.read+e+1),this},s.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)},s.ByteStringBuffer.prototype.copy=function(){var e=s.createBuffer(this.data);return e.read=this.read,e},s.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this},s.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this},s.ByteStringBuffer.prototype.truncate=function(e){var t=Math.max(0,this.length()-e);return this.data=this.data.substr(this.read,t),this.read=0,this},s.ByteStringBuffer.prototype.toHex=function(){for(var e="",t=this.read;t=e)return this;t=Math.max(t||this.growSize,e);var r=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),n=new Uint8Array(this.length()+t);return n.set(r),this.data=new DataView(n.buffer),this},s.DataBuffer.prototype.putByte=function(e){return this.accommodate(1),this.data.setUint8(this.write++,e),this},s.DataBuffer.prototype.fillWithByte=function(e,t){this.accommodate(t);for(var r=0;r>8&65535),this.data.setInt8(this.write,e>>16&255),this.write+=3,this},s.DataBuffer.prototype.putInt32=function(e){return this.accommodate(4),this.data.setInt32(this.write,e),this.write+=4,this},s.DataBuffer.prototype.putInt16Le=function(e){return this.accommodate(2),this.data.setInt16(this.write,e,!0),this.write+=2,this},s.DataBuffer.prototype.putInt24Le=function(e){return this.accommodate(3),this.data.setInt8(this.write,e>>16&255),this.data.setInt16(this.write,e>>8&65535,!0),this.write+=3,this},s.DataBuffer.prototype.putInt32Le=function(e){return this.accommodate(4),this.data.setInt32(this.write,e,!0),this.write+=4,this},s.DataBuffer.prototype.putInt=function(e,t){a(t),this.accommodate(t/8);do{t-=8,this.data.setInt8(this.write++,e>>t&255)}while(t>0);return this},s.DataBuffer.prototype.putSignedInt=function(e,t){return a(t),this.accommodate(t/8),e<0&&(e+=2<0);return t},s.DataBuffer.prototype.getSignedInt=function(e){var t=this.getInt(e),r=2<=r&&(t-=r<<1),t},s.DataBuffer.prototype.getBytes=function(e){var t;return e?(e=Math.min(this.length(),e),t=this.data.slice(this.read,this.read+e),this.read+=e):0===e?t="":(t=0===this.read?this.data:this.data.slice(this.read),this.clear()),t},s.DataBuffer.prototype.bytes=function(e){return void 0===e?this.data.slice(this.read):this.data.slice(this.read,this.read+e)},s.DataBuffer.prototype.at=function(e){return this.data.getUint8(this.read+e)},s.DataBuffer.prototype.setAt=function(e,t){return this.data.setUint8(e,t),this},s.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)},s.DataBuffer.prototype.copy=function(){return new s.DataBuffer(this)},s.DataBuffer.prototype.compact=function(){if(this.read>0){var e=new Uint8Array(this.data.buffer,this.read),t=new Uint8Array(e.byteLength);t.set(e),this.data=new DataView(t),this.write-=this.read,this.read=0}return this},s.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this},s.DataBuffer.prototype.truncate=function(e){return this.write=Math.max(0,this.length()-e),this.read=Math.min(this.read,this.write),this},s.DataBuffer.prototype.toHex=function(){for(var e="",t=this.read;t0;)1&t&&(r+=e),(t>>>=1)>0&&(e+=e);return r},s.xorBytes=function(e,t,r){for(var n="",i="",o="",s=0,a=0;r>0;--r,++s)i=e.charCodeAt(s)^t.charCodeAt(s),a>=10&&(n+=o,o="",a=0),o+=String.fromCharCode(i),++a;return n+o},s.hexToBytes=function(e){var t="",r=0;for(!0&e.length&&(r=1,t+=String.fromCharCode(parseInt(e[0],16)));r>24&255)+String.fromCharCode(e>>16&255)+String.fromCharCode(e>>8&255)+String.fromCharCode(255&e)};var u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",f=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],l="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";s.encode64=function(e,t){for(var r,n,i,o="",s="",a=0;a>2),o+=u.charAt((3&r)<<4|n>>4),isNaN(n)?o+="==":(o+=u.charAt((15&n)<<2|i>>6),o+=isNaN(i)?"=":u.charAt(63&i)),t&&o.length>t&&(s+=o.substr(0,t)+"\r\n",o=o.substr(t));return s+o},s.decode64=function(e){e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var t,r,n,i,o="",s=0;s>4),64!==n&&(o+=String.fromCharCode((15&r)<<4|n>>2),64!==i&&(o+=String.fromCharCode((3&n)<<6|i)));return o},s.encodeUtf8=function(e){return unescape(encodeURIComponent(e))},s.decodeUtf8=function(e){return decodeURIComponent(escape(e))},s.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:o.encode,decode:o.decode}},s.binary.raw.encode=function(e){return String.fromCharCode.apply(null,e)},s.binary.raw.decode=function(e,t,r){var n=t;n||(n=new Uint8Array(e.length));for(var i=r=r||0,o=0;o>2),o+=u.charAt((3&r)<<4|n>>4),isNaN(n)?o+="==":(o+=u.charAt((15&n)<<2|i>>6),o+=isNaN(i)?"=":u.charAt(63&i)),t&&o.length>t&&(s+=o.substr(0,t)+"\r\n",o=o.substr(t));return s+o},s.binary.base64.decode=function(e,t,r){var n,i,o,s,a=t;a||(a=new Uint8Array(3*Math.ceil(e.length/4))),e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var c=0,u=r=r||0;c>4,64!==o&&(a[u++]=(15&i)<<4|o>>2,64!==s&&(a[u++]=(3&o)<<6|s));return t?u-r:a.subarray(0,u)},s.binary.base58.encode=function(e,t){return s.binary.baseN.encode(e,l,t)},s.binary.base58.decode=function(e,t){return s.binary.baseN.decode(e,l,t)},s.text={utf8:{},utf16:{}},s.text.utf8.encode=function(e,t,r){e=s.encodeUtf8(e);var n=t;n||(n=new Uint8Array(e.length));for(var i=r=r||0,o=0;o0?(i=r[n].substring(0,s),o=r[n].substring(s+1)):(i=r[n],o=null),i in t||(t[i]=[]),i in Object.prototype||null===o||t[i].push(unescape(o))}return t};return void 0===e?(null===v&&(v="undefined"!=typeof window&&window.location&&window.location.search?r(window.location.search.substring(1)):{}),t=v):t=r(e),t},s.parseFragment=function(e){var t=e,r="",n=e.indexOf("?");n>0&&(t=e.substring(0,n),r=e.substring(n+1));var i=t.split("/");return i.length>0&&""===i[0]&&i.shift(),{pathString:t,queryString:r,path:i,query:""===r?{}:s.getQueryVariables(r)}},s.makeRequest=function(e){var t=s.parseFragment(e),r={path:t.pathString,query:t.queryString,getPath:function(e){return void 0===e?t.path:t.path[e]},getQuery:function(e,r){var n;return void 0===e?n=t.query:(n=t.query[e])&&void 0!==r&&(n=n[r]),n},getQueryLast:function(e,t){var n=r.getQuery(e);return n?n[n.length-1]:t}};return r},s.makeLink=function(e,t,r){e=jQuery.isArray(e)?e.join("/"):e;var n=jQuery.param(t||{});return r=r||"",e+(n.length>0?"?"+n:"")+(r.length>0?"#"+r:"")},s.isEmpty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!1;return!0},s.format=function(e){for(var t,r,n=/%./g,i=0,o=[],s=0;t=n.exec(e);){(r=e.substring(s,n.lastIndex-2)).length>0&&o.push(r),s=n.lastIndex;var a=t[0][1];switch(a){case"s":case"o":i");break;case"%":o.push("%");break;default:o.push("<%"+a+"?>")}}return o.push(e.substring(s)),o.join("")},s.formatNumber=function(e,t,r,n){var i=e,o=isNaN(t=Math.abs(t))?2:t,s=void 0===r?",":r,a=void 0===n?".":n,c=i<0?"-":"",u=parseInt(i=Math.abs(+i||0).toFixed(o),10)+"",f=u.length>3?u.length%3:0;return c+(f?u.substr(0,f)+a:"")+u.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+a)+(o?s+Math.abs(i-u).toFixed(o).slice(2):"")},s.formatSize=function(e){return e>=1073741824?s.formatNumber(e/1073741824,2,".","")+" GiB":e>=1048576?s.formatNumber(e/1048576,2,".","")+" MiB":e>=1024?s.formatNumber(e/1024,0)+" KiB":s.formatNumber(e,0)+" bytes"},s.bytesFromIP=function(e){return-1!==e.indexOf(".")?s.bytesFromIPv4(e):-1!==e.indexOf(":")?s.bytesFromIPv6(e):null},s.bytesFromIPv4=function(e){if(4!==(e=e.split(".")).length)return null;for(var t=s.createBuffer(),r=0;rr[n].end-r[n].start&&(n=r.length-1)):r.push({start:c,end:c})}t.push(o)}if(r.length>0){var u=r[n];u.end-u.start>0&&(t.splice(u.start,u.end-u.start+1,""),0===u.start&&t.unshift(""),7===u.end&&t.push(""))}return t.join(":")},s.estimateCores=function(e,t){if("function"==typeof e&&(t=e,e={}),e=e||{},"cores"in s&&!e.update)return t(null,s.cores);if("undefined"!=typeof navigator&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return s.cores=navigator.hardwareConcurrency,t(null,s.cores);if("undefined"==typeof Worker)return s.cores=1,t(null,s.cores);if("undefined"==typeof Blob)return s.cores=2,t(null,s.cores);var r=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",(function(e){for(var t=Date.now(),r=t+4;Date.now()a.st&&i.sti.st&&a.st{var n=r(3832);r(8925),r(3068),r(33480),r(28991),r(86971),r(66270),r(26953),r(96007),r(28095),r(97116);var i=n.asn1,o=e.exports=n.pki=n.pki||{},s=o.oids,a={};a.CN=s.commonName,a.commonName="CN",a.C=s.countryName,a.countryName="C",a.L=s.localityName,a.localityName="L",a.ST=s.stateOrProvinceName,a.stateOrProvinceName="ST",a.O=s.organizationName,a.organizationName="O",a.OU=s.organizationalUnitName,a.organizationalUnitName="OU",a.E=s.emailAddress,a.emailAddress="E";var c=n.pki.rsa.publicKeyValidator,u={name:"Certificate",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:i.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:i.Class.UNIVERSAL,type:i.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:i.Class.UNIVERSAL,type:i.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:i.Class.UNIVERSAL,type:i.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:i.Class.UNIVERSAL,type:i.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},c,{name:"Certificate.TBSCertificate.issuerUniqueID",tagClass:i.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:i.Class.UNIVERSAL,type:i.Type.BITSTRING,constructed:!1,captureBitStringValue:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:i.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:i.Class.UNIVERSAL,type:i.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSubjectUniqueId"}]},{name:"Certificate.TBSCertificate.extensions",tagClass:i.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:i.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},{name:"Certificate.signatureValue",tagClass:i.Class.UNIVERSAL,type:i.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSignature"}]},f={name:"rsapss",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:i.Class.UNIVERSAL,type:i.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:i.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:i.Class.UNIVERSAL,type:i.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:i.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:i.Class.UNIVERSAL,type:i.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:i.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",tagClass:i.Class.UNIVERSAL,type:i.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},l={name:"CertificationRequestInfo",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:i.Class.UNIVERSAL,type:i.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},c,{name:"CertificationRequestInfo.attributes",tagClass:i.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",tagClass:i.Class.UNIVERSAL,type:i.Type.SET,constructed:!0}]}]}]},h={name:"CertificationRequest",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[l,{name:"CertificationRequest.signatureAlgorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:i.Class.UNIVERSAL,type:i.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:i.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:i.Class.UNIVERSAL,type:i.Type.BITSTRING,constructed:!1,captureBitStringValue:"csrSignature"}]};function d(e,t){"string"==typeof t&&(t={shortName:t});for(var r,n=null,i=0;null===n&&i128)throw new Error('Invalid "nsComment" content.');e.value=i.create(i.Class.UNIVERSAL,i.Type.IA5STRING,!1,e.comment)}else if("subjectKeyIdentifier"===e.name&&t.cert){var d=t.cert.generateSubjectKeyIdentifier();e.subjectKeyIdentifier=d.toHex(),e.value=i.create(i.Class.UNIVERSAL,i.Type.OCTETSTRING,!1,d.getBytes())}else if("authorityKeyIdentifier"===e.name&&t.cert){if(e.value=i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[]),f=e.value.value,e.keyIdentifier){var p=!0===e.keyIdentifier?t.cert.generateSubjectKeyIdentifier().getBytes():e.keyIdentifier;f.push(i.create(i.Class.CONTEXT_SPECIFIC,0,!1,p))}if(e.authorityCertIssuer){var g=[i.create(i.Class.CONTEXT_SPECIFIC,4,!0,[y(!0===e.authorityCertIssuer?t.cert.issuer:e.authorityCertIssuer)])];f.push(i.create(i.Class.CONTEXT_SPECIFIC,1,!0,g))}if(e.serialNumber){var b=n.util.hexToBytes(!0===e.serialNumber?t.cert.serialNumber:e.serialNumber);f.push(i.create(i.Class.CONTEXT_SPECIFIC,2,!1,b))}}else if("cRLDistributionPoints"===e.name){e.value=i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[]),f=e.value.value;var m,v=i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[]),w=i.create(i.Class.CONTEXT_SPECIFIC,0,!0,[]);for(h=0;h2)throw new Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(l.length<2)throw new Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");if(c.validity.notBefore=l[0],c.validity.notAfter=l[1],c.tbsCertificate=r.tbsCertificate,t){var h;if(c.md=null,c.signatureOid in s)switch(s[c.signatureOid]){case"sha1WithRSAEncryption":c.md=n.md.sha1.create();break;case"md5WithRSAEncryption":c.md=n.md.md5.create();break;case"sha256WithRSAEncryption":case"RSASSA-PSS":c.md=n.md.sha256.create();break;case"sha384WithRSAEncryption":c.md=n.md.sha384.create();break;case"sha512WithRSAEncryption":c.md=n.md.sha512.create()}if(null===c.md)throw(h=new Error("Could not compute certificate digest. Unknown signature OID.")).signatureOid=c.signatureOid,h;var y=i.toDer(c.tbsCertificate);c.md.update(y.getBytes())}var b=n.md.sha1.create();c.issuer.getField=function(e){return d(c.issuer,e)},c.issuer.addField=function(e){g([e]),c.issuer.attributes.push(e)},c.issuer.attributes=o.RDNAttributesAsArray(r.certIssuer,b),r.certIssuerUniqueId&&(c.issuer.uniqueId=r.certIssuerUniqueId),c.issuer.hash=b.digest().toHex();var m=n.md.sha1.create();return c.subject.getField=function(e){return d(c.subject,e)},c.subject.addField=function(e){g([e]),c.subject.attributes.push(e)},c.subject.attributes=o.RDNAttributesAsArray(r.certSubject,m),r.certSubjectUniqueId&&(c.subject.uniqueId=r.certSubjectUniqueId),c.subject.hash=m.digest().toHex(),r.certExtensions?c.extensions=o.certificateExtensionsFromAsn1(r.certExtensions):c.extensions=[],c.publicKey=o.publicKeyFromAsn1(r.subjectPublicKeyInfo),c},o.certificateExtensionsFromAsn1=function(e){for(var t=[],r=0;r1&&(r=c.value.charCodeAt(1),o=c.value.length>2?c.value.charCodeAt(2):0),t.digitalSignature=128==(128&r),t.nonRepudiation=64==(64&r),t.keyEncipherment=32==(32&r),t.dataEncipherment=16==(16&r),t.keyAgreement=8==(8&r),t.keyCertSign=4==(4&r),t.cRLSign=2==(2&r),t.encipherOnly=1==(1&r),t.decipherOnly=128==(128&o)}else if("basicConstraints"===t.name){(c=i.fromDer(t.value)).value.length>0&&c.value[0].type===i.Type.BOOLEAN?t.cA=0!==c.value[0].value.charCodeAt(0):t.cA=!1;var a=null;c.value.length>0&&c.value[0].type===i.Type.INTEGER?a=c.value[0].value:c.value.length>1&&(a=c.value[1].value),null!==a&&(t.pathLenConstraint=i.derToInteger(a))}else if("extKeyUsage"===t.name)for(var c=i.fromDer(t.value),u=0;u1&&(r=c.value.charCodeAt(1)),t.client=128==(128&r),t.server=64==(64&r),t.email=32==(32&r),t.objsign=16==(16&r),t.reserved=8==(8&r),t.sslCA=4==(4&r),t.emailCA=2==(2&r),t.objCA=1==(1&r);else if("subjectAltName"===t.name||"issuerAltName"===t.name){var l;t.altNames=[],c=i.fromDer(t.value);for(var h=0;h=w&&e0&&s.value.push(o.certificateExtensionsToAsn1(e.extensions)),s},o.getCertificationRequestInfo=function(e){return i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[i.create(i.Class.UNIVERSAL,i.Type.INTEGER,!1,i.integerToDer(e.version).getBytes()),y(e.subject),o.publicKeyToAsn1(e.publicKey),v(e)])},o.distinguishedNameToAsn1=function(e){return y(e)},o.certificateToAsn1=function(e){var t=e.tbsCertificate||o.getTBSCertificate(e);return i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[t,i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[i.create(i.Class.UNIVERSAL,i.Type.OID,!1,i.oidToDer(e.signatureOid).getBytes()),m(e.signatureOid,e.signatureParameters)]),i.create(i.Class.UNIVERSAL,i.Type.BITSTRING,!1,String.fromCharCode(0)+e.signature)])},o.certificateExtensionsToAsn1=function(e){var t=i.create(i.Class.CONTEXT_SPECIFIC,3,!0,[]),r=i.create(i.Class.UNIVERSAL,i.Type.SEQUENCE,!0,[]);t.value.push(r);for(var n=0;nf.validity.notAfter)&&(c={message:"Certificate is not valid yet or has expired.",error:o.certificateError.certificate_expired,notBefore:f.validity.notBefore,notAfter:f.validity.notAfter,now:s}),null===c){if(null===(l=t[0]||e.getIssuer(f))&&f.isIssuer(f)&&(h=!0,l=f),l){var d=l;n.util.isArray(d)||(d=[d]);for(var p=!1;!p&&d.length>0;){l=d.shift();try{p=l.verify(f)}catch(e){}}p||(c={message:"Certificate signature is invalid.",error:o.certificateError.bad_certificate})}null!==c||l&&!h||e.hasCertificate(f)||(c={message:"Certificate is not trusted.",error:o.certificateError.unknown_ca})}if(null===c&&l&&!f.isIssuer(l)&&(c={message:"Certificate issuer is invalid.",error:o.certificateError.bad_certificate}),null===c)for(var y={keyUsage:!0,basicConstraints:!0},g=0;null===c&&gm.pathLenConstraint&&(c={message:"Certificate basicConstraints pathLenConstraint violated.",error:o.certificateError.bad_certificate})}var w=null===c||c.error,E=r.verify?r.verify(w,u,i):w;if(!0!==E)throw!0===w&&(c={message:"The application rejected the certificate.",error:o.certificateError.bad_certificate}),(E||0===E)&&("object"!=typeof E||n.util.isArray(E)?"string"==typeof E&&(c.error=E):(E.message&&(c.message=E.message),E.error&&(c.error=E.error))),c;c=null,a=!1,++u}while(t.length>0);return!0}},35049:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Observable:()=>E,Subject:()=>P,filter:()=>S,flatMap:()=>A,interval:()=>T,map:()=>I,merge:()=>C,multicast:()=>R,scan:()=>k,unsubscribe:()=>_});class n{constructor(e){this._baseObserver=e,this._pendingPromises=new Set}complete(){Promise.all(this._pendingPromises).then((()=>this._baseObserver.complete())).catch((e=>this._baseObserver.error(e)))}error(e){this._baseObserver.error(e)}schedule(e){const t=Promise.all(this._pendingPromises),r=[],n=e=>r.push(e),i=Promise.resolve().then((()=>{return o=this,s=void 0,c=function*(){yield t,yield e(n),this._pendingPromises.delete(i);for(const e of r)this._baseObserver.next(e)},new((a=void 0)||(a=Promise))((function(e,t){function r(e){try{i(c.next(e))}catch(e){t(e)}}function n(e){try{i(c.throw(e))}catch(e){t(e)}}function i(t){var i;t.done?e(t.value):(i=t.value,i instanceof a?i:new a((function(e){e(i)}))).then(r,n)}i((c=c.apply(o,s||[])).next())}));var o,s,a,c})).catch((e=>{this._pendingPromises.delete(i),this._baseObserver.error(e)}));this._pendingPromises.add(i)}}const i=()=>"function"==typeof Symbol,o=e=>i()&&Boolean(Symbol[e]),s=e=>o(e)?Symbol[e]:"@@"+e;o("asyncIterator")||(Symbol.asyncIterator=Symbol.asyncIterator||Symbol.for("Symbol.asyncIterator"));const a=s("iterator"),c=s("observable"),u=s("species");function f(e,t){const r=e[t];if(null!=r){if("function"!=typeof r)throw new TypeError(r+" is not a function");return r}}function l(e){let t=e.constructor;return void 0!==t&&(t=t[u],null===t&&(t=void 0)),void 0!==t?t:w}function h(e){h.log?h.log(e):setTimeout((()=>{throw e}),0)}function d(e){Promise.resolve().then((()=>{try{e()}catch(e){h(e)}}))}function p(e){const t=e._cleanup;if(void 0!==t&&(e._cleanup=void 0,t))try{if("function"==typeof t)t();else{const e=f(t,"unsubscribe");e&&e.call(t)}}catch(e){h(e)}}function y(e){e._observer=void 0,e._queue=void 0,e._state="closed"}function g(e,t,r){e._state="running";const n=e._observer;try{const i=n?f(n,t):void 0;switch(t){case"next":i&&i.call(n,r);break;case"error":if(y(e),!i)throw r;i.call(n,r);break;case"complete":y(e),i&&i.call(n)}}catch(e){h(e)}"closed"===e._state?p(e):"running"===e._state&&(e._state="ready")}function b(e,t,r){if("closed"!==e._state)return"buffering"===e._state?(e._queue=e._queue||[],void e._queue.push({type:t,value:r})):"ready"!==e._state?(e._state="buffering",e._queue=[{type:t,value:r}],void d((()=>function(e){const t=e._queue;if(t){e._queue=void 0,e._state="ready";for(const r of t)if(g(e,r.type,r.value),"closed"===e._state)break}}(e)))):void g(e,t,r)}class m{constructor(e,t){this._cleanup=void 0,this._observer=e,this._queue=void 0,this._state="initializing";const r=new v(this);try{this._cleanup=t.call(void 0,r)}catch(e){r.error(e)}"initializing"===this._state&&(this._state="ready")}get closed(){return"closed"===this._state}unsubscribe(){"closed"!==this._state&&(y(this),p(this))}}class v{constructor(e){this._subscription=e}get closed(){return"closed"===this._subscription._state}next(e){b(this._subscription,"next",e)}error(e){b(this._subscription,"error",e)}complete(){b(this._subscription,"complete")}}class w{constructor(e){if(!(this instanceof w))throw new TypeError("Observable cannot be called as a function");if("function"!=typeof e)throw new TypeError("Observable initializer must be a function");this._subscriber=e}subscribe(e,t,r){return"object"==typeof e&&null!==e||(e={next:e,error:t,complete:r}),new m(e,this._subscriber)}pipe(e,...t){let r=this;for(const n of[e,...t])r=n(r);return r}tap(e,t,r){const n="object"!=typeof e||null===e?{next:e,error:t,complete:r}:e;return new w((e=>this.subscribe({next(t){n.next&&n.next(t),e.next(t)},error(t){n.error&&n.error(t),e.error(t)},complete(){n.complete&&n.complete(),e.complete()},start(e){n.start&&n.start(e)}})))}forEach(e){return new Promise(((t,r)=>{if("function"!=typeof e)return void r(new TypeError(e+" is not a function"));function n(){i.unsubscribe(),t(void 0)}const i=this.subscribe({next(t){try{e(t,n)}catch(e){r(e),i.unsubscribe()}},error(e){r(e)},complete(){t(void 0)}})}))}map(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return new(l(this))((t=>this.subscribe({next(r){let n=r;try{n=e(r)}catch(e){return t.error(e)}t.next(n)},error(e){t.error(e)},complete(){t.complete()}})))}filter(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return new(l(this))((t=>this.subscribe({next(r){try{if(!e(r))return}catch(e){return t.error(e)}t.next(r)},error(e){t.error(e)},complete(){t.complete()}})))}reduce(e,t){if("function"!=typeof e)throw new TypeError(e+" is not a function");const r=l(this),n=arguments.length>1;let i=!1,o=t;return new r((t=>this.subscribe({next(r){const s=!i;if(i=!0,!s||n)try{o=e(o,r)}catch(e){return t.error(e)}else o=r},error(e){t.error(e)},complete(){if(!i&&!n)return t.error(new TypeError("Cannot reduce an empty sequence"));t.next(o),t.complete()}})))}concat(...e){const t=l(this);return new t((r=>{let n,i=0;return function o(s){n=s.subscribe({next(e){r.next(e)},error(e){r.error(e)},complete(){i===e.length?(n=void 0,r.complete()):o(t.from(e[i++]))}})}(this),()=>{n&&(n.unsubscribe(),n=void 0)}}))}flatMap(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");const t=l(this);return new t((r=>{const n=[],i=this.subscribe({next(i){let s;if(e)try{s=e(i)}catch(e){return r.error(e)}else s=i;const a=t.from(s).subscribe({next(e){r.next(e)},error(e){r.error(e)},complete(){const e=n.indexOf(a);e>=0&&n.splice(e,1),o()}});n.push(a)},error(e){r.error(e)},complete(){o()}});function o(){i.closed&&0===n.length&&r.complete()}return()=>{n.forEach((e=>e.unsubscribe())),i.unsubscribe()}}))}[(Symbol.observable,c)](){return this}static from(e){const t="function"==typeof this?this:w;if(null==e)throw new TypeError(e+" is not an object");const r=f(e,c);if(r){const n=r.call(e);if(Object(n)!==n)throw new TypeError(n+" is not an object");return function(e){return e instanceof w}(n)&&n.constructor===t?n:new t((e=>n.subscribe(e)))}if(o("iterator")){const r=f(e,a);if(r)return new t((t=>{d((()=>{if(!t.closed){for(const n of r.call(e))if(t.next(n),t.closed)return;t.complete()}}))}))}if(Array.isArray(e))return new t((t=>{d((()=>{if(!t.closed){for(const r of e)if(t.next(r),t.closed)return;t.complete()}}))}));throw new TypeError(e+" is not observable")}static of(...e){return new("function"==typeof this?this:w)((t=>{d((()=>{if(!t.closed){for(const r of e)if(t.next(r),t.closed)return;t.complete()}}))}))}static get[u](){return this}}i()&&Object.defineProperty(w,Symbol("extensions"),{value:{symbol:c,hostReportError:h},configurable:!0});const E=w,_=function(e){"function"==typeof e?e():e&&"function"==typeof e.unsubscribe&&e.unsubscribe()};const S=function(e){return t=>new E((r=>{const i=new n(r),o=t.subscribe({complete(){i.complete()},error(e){i.error(e)},next(t){i.schedule((r=>{return n=this,i=void 0,s=function*(){(yield e(t))&&r(t)},new((o=void 0)||(o=Promise))((function(e,t){function r(e){try{c(s.next(e))}catch(e){t(e)}}function a(e){try{c(s.throw(e))}catch(e){t(e)}}function c(t){var n;t.done?e(t.value):(n=t.value,n instanceof o?n:new o((function(e){e(n)}))).then(r,a)}c((s=s.apply(n,i||[])).next())}));var n,i,o,s}))}});return()=>_(o)}))};const A=function(e){return t=>new E((r=>{const i=new n(r),s=t.subscribe({complete(){i.complete()},error(e){i.error(e)},next(t){i.schedule((r=>{return n=this,i=void 0,a=function*(){var n,i;const s=yield e(t);if((u=s)&&o("iterator")&&u[Symbol.iterator]||function(e){return e&&o("asyncIterator")&&e[Symbol.asyncIterator]}(s))try{for(var a,c=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){!function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)}(n,i,(t=e[r](t)).done,t.value)}))}}}(s);!(a=yield c.next()).done;){const e=a.value;r(e)}}catch(e){n={error:e}}finally{try{a&&!a.done&&(i=c.return)&&(yield i.call(c))}finally{if(n)throw n.error}}else s.map((e=>r(e)));var u},new((s=void 0)||(s=Promise))((function(e,t){function r(e){try{c(a.next(e))}catch(e){t(e)}}function o(e){try{c(a.throw(e))}catch(e){t(e)}}function c(t){var n;t.done?e(t.value):(n=t.value,n instanceof s?n:new s((function(e){e(n)}))).then(r,o)}c((a=a.apply(n,i||[])).next())}));var n,i,s,a}))}});return()=>_(s)}))};function T(e){return new w((t=>{let r=0;const n=setInterval((()=>{t.next(r++)}),e);return()=>clearInterval(n)}))}const I=function(e){return t=>new E((r=>{const i=new n(r),o=t.subscribe({complete(){i.complete()},error(e){i.error(e)},next(t){i.schedule((r=>{return n=this,i=void 0,s=function*(){const n=yield e(t);r(n)},new((o=void 0)||(o=Promise))((function(e,t){function r(e){try{c(s.next(e))}catch(e){t(e)}}function a(e){try{c(s.throw(e))}catch(e){t(e)}}function c(t){var n;t.done?e(t.value):(n=t.value,n instanceof o?n:new o((function(e){e(n)}))).then(r,a)}c((s=s.apply(n,i||[])).next())}));var n,i,o,s}))}});return()=>_(o)}))},C=function(...e){return 0===e.length?w.from([]):new w((t=>{let r=0;const n=e.map((n=>n.subscribe({error(e){t.error(e),i()},next(e){t.next(e)},complete(){++r===e.length&&(t.complete(),i())}}))),i=()=>{n.forEach((e=>_(e)))};return i}))},P=class extends E{constructor(){super((e=>(this._observers.add(e),()=>this._observers.delete(e)))),this._observers=new Set}next(e){for(const t of this._observers)t.next(e)}error(e){for(const t of this._observers)t.error(e)}complete(){for(const e of this._observers)e.complete()}},R=function(e){const t=new P;let r,n=0;return new E((i=>{r||(r=e.subscribe(t));const o=t.subscribe(i);return n++,()=>{n--,o.unsubscribe(),0===n&&(_(r),r=void 0)}}))};const k=function(e,t){return r=>new E((i=>{let o,s=0;const a=new n(i),c=r.subscribe({complete(){a.complete()},error(e){a.error(e)},next(r){a.schedule((n=>{return i=this,a=void 0,u=function*(){const i=0===s?void 0===t?r:t:o;o=yield e(i,r,s++),n(o)},new((c=void 0)||(c=Promise))((function(e,t){function r(e){try{o(u.next(e))}catch(e){t(e)}}function n(e){try{o(u.throw(e))}catch(e){t(e)}}function o(t){var i;t.done?e(t.value):(i=t.value,i instanceof c?i:new c((function(e){e(i)}))).then(r,n)}o((u=u.apply(i,a||[])).next())}));var i,a,c,u}))}});return()=>_(c)}))}},61750:(e,t,r)=>{"use strict";const n=r(97759),i=r(80341);e.exports=(e,t)=>{const r=n(e,{...t,count:1});return i.fn((async e=>{e((()=>{r.cancel()}));const[t]=await r;return t}))()},e.exports.AggregateError=n.AggregateError},80341:e=>{"use strict";class t extends Error{constructor(e){super(e||"Promise was canceled"),this.name="CancelError"}get isCanceled(){return!0}}class r{static fn(e){return(...t)=>new r(((r,n,i)=>{t.push(i),e(...t).then(r,n)}))}constructor(e){this._cancelHandlers=[],this._isPending=!0,this._isCanceled=!1,this._rejectOnCancel=!0,this._promise=new Promise(((t,r)=>{this._reject=r;const n=e=>{if(!this._isPending)throw new Error("The `onCancel` handler was attached after the promise settled.");this._cancelHandlers.push(e)};return Object.defineProperties(n,{shouldReject:{get:()=>this._rejectOnCancel,set:e=>{this._rejectOnCancel=e}}}),e((e=>{this._isCanceled&&n.shouldReject||(this._isPending=!1,t(e))}),(e=>{this._isPending=!1,r(e)}),n)}))}then(e,t){return this._promise.then(e,t)}catch(e){return this._promise.catch(e)}finally(e){return this._promise.finally(e)}cancel(e){if(this._isPending&&!this._isCanceled){if(this._isCanceled=!0,this._cancelHandlers.length>0)try{for(const e of this._cancelHandlers)e()}catch(e){return void this._reject(e)}this._rejectOnCancel&&this._reject(new t(e))}}get isCanceled(){return this._isCanceled}}Object.setPrototypeOf(r.prototype,Promise.prototype),e.exports=r,e.exports.CancelError=t},63931:e=>{"use strict";e.exports=()=>{const e={};return e.promise=new Promise(((t,r)=>{e.resolve=t,e.reject=r})),e}},35103:(e,t,r)=>{const n=r(91607),i=r(63931);e.exports=class{constructor(){this._buffer=new n,this._waitingConsumers=new n}push(e){const{promise:t,resolve:r}=i();return this._buffer.push({chunk:e,resolve:r}),this._consume(),t}_consume(){for(;!this._waitingConsumers.isEmpty()&&!this._buffer.isEmpty();){const e=this._waitingConsumers.shift(),t=this._buffer.shift();e.resolve(t.chunk),t.resolve()}}shift(){const{promise:e,resolve:t}=i();return this._waitingConsumers.push({resolve:t}),this._consume(),e}isEmpty(){return this._buffer.isEmpty()}}},80406:(e,t,r)=>{"use strict";const n=r(89161),i=e=>{if(!Number.isInteger(e)&&e!==1/0||!(e>0))return Promise.reject(new TypeError("Expected `concurrency` to be a number from 1 and up"));const t=[];let r=0;const i=()=>{r--,t.length>0&&t.shift()()},o=(e,t,...o)=>{r++;const s=n(e,...o);t(s),s.then(i,i)},s=(n,...i)=>new Promise((s=>((n,i,...s)=>{rr},pendingCount:{get:()=>t.length},clearQueue:{value:()=>{t.length=0}}}),s};e.exports=i,e.exports.default=i},47924:e=>{"use strict";const t=async e=>{try{return{isFulfilled:!0,isRejected:!1,value:await e}}catch(e){return{isFulfilled:!1,isRejected:!0,reason:e}}};e.exports=t,e.exports.default=t},42693:(e,t,r)=>{"use strict";const n=r(99353),i=["Failed to fetch","NetworkError when attempting to fetch resource.","The Internet connection appears to be offline.","Network request failed"];class o extends Error{constructor(e){super(),e instanceof Error?(this.originalError=e,({message:e}=e)):(this.originalError=new Error(e),this.originalError.stack=this.stack),this.name="AbortError",this.message=e}}const s=(e,t)=>new Promise(((r,s)=>{t={onFailedAttempt:()=>{},retries:10,...t};const a=n.operation(t);a.attempt((async n=>{try{r(await e(n))}catch(e){if(!(e instanceof Error))return void s(new TypeError(`Non-error was thrown: "${e}". You should only throw errors.`));if(e instanceof o)a.stop(),s(e.originalError);else if(e instanceof TypeError&&(c=e.message,!i.includes(c)))a.stop(),s(e);else{((e,t,r)=>{const n=r.retries-(t-1);e.attemptNumber=t,e.retriesLeft=n})(e,n,t);try{await t.onFailedAttempt(e)}catch(e){return void s(e)}a.retry(e)||s(a.mainError())}}var c}))}));e.exports=s,e.exports.default=s,e.exports.AbortError=o},13296:(e,t,r)=>{"use strict";const n=r(47924),i=r(80406);e.exports=async(e,t={})=>{const{concurrency:r=1/0}=t,o=i(r);return Promise.all(e.map((e=>e&&"function"==typeof e.then?n(e):n("function"==typeof e?o((()=>e())):Promise.resolve(e)))))}},97759:(e,t,r)=>{"use strict";const n=r(56455),i=r(80341);class o extends Error{}e.exports=(e,t)=>new i(((r,i,s)=>{const{count:a,filter:c=(()=>!0)}=t;if(!Number.isFinite(a))return void i(new TypeError("Expected a finite number, got "+typeof t.count));const u=[],f=[];let l=0,h=!1;const d=new Set,p=()=>{for(const t of e)d.has(t)||"function"!=typeof t.cancel||t.cancel()};s(p);for(const t of e)l++,(async()=>{try{const e=await t;if(h)return;if(!c(e))throw new o("Value does not satisfy filter");u.push(e)}catch(e){f.push(e)}finally{d.add(t),!h&&(u.length===a&&(r(u),h=!0),l-f.lengthl&&(i(new RangeError(`Expected input to contain at least ${t.count} items, but contains ${l} items`)),p())})),e.exports.AggregateError=n,e.exports.FilterError=o},58147:e=>{"use strict";class t extends Error{constructor(e){super(e),this.name="TimeoutError"}}const r=(e,r,n,i)=>{let o;const s=new Promise(((s,a)=>{if("number"!=typeof r||r<0)throw new TypeError("Expected `milliseconds` to be a positive number");r!==1/0?(i={customTimers:{setTimeout,clearTimeout},...i},o=i.customTimers.setTimeout.call(void 0,(()=>{if("function"==typeof n){try{s(n())}catch(e){a(e)}return}const i=n instanceof Error?n:new t("string"==typeof n?n:`Promise timed out after ${r} milliseconds`);"function"==typeof e.cancel&&e.cancel(),a(i)}),r),(async()=>{try{s(await e)}catch(e){a(e)}finally{i.customTimers.clearTimeout.call(void 0,o)}})()):s(e)}));return s.clear=()=>{clearTimeout(o),o=void 0},s};e.exports=r,e.exports.default=r,e.exports.TimeoutError=t},89161:e=>{"use strict";const t=(e,...t)=>new Promise((r=>{r(e(...t))}));e.exports=t,e.exports.default=t},88785:(e,t,r)=>{"use strict";const{CID:n}=r(81362),i=r(22817),o=r(98441),s=r(99086),a=r(9885),{base58btc:c}=r(99086),{base32:u}=r(22817),{base16:f}=r(84835),l=r(28924),h=r(14437),d=r(98514),{PeerIdProto:p}=r(28780),{equals:y}=r(19588),{fromString:g}=r(52217),{toString:b}=r(92263),{identity:m}=r(78103),v={...i,...o,...s,...a},w=Object.keys(v).reduce(((e,t)=>e.or(v[t])),u.decoder),E=d(class{constructor(e,t,r){if(!(e instanceof Uint8Array))throw new Error("invalid id provided");if(t&&r&&!y(t.public.bytes,r.bytes))throw new Error("inconsistent arguments");this._id=e,this._idB58String=c.encode(this.id).substring(1),this._privKey=t,this._pubKey=r}get id(){return this._id}set id(e){throw new Error("Id is immutable")}get privKey(){return this._privKey}set privKey(e){this._privKey=e}get pubKey(){if(this._pubKey)return this._pubKey;if(this._privKey)return this._privKey.public;try{const e=l.decode(this.id);e.code===m.code&&(this._pubKey=h.unmarshalPublicKey(e.digest))}catch(e){}return this._pubKey}set pubKey(e){this._pubKey=e}marshalPubKey(){if(this.pubKey)return h.marshalPublicKey(this.pubKey)}marshalPrivKey(){if(this.privKey)return h.marshalPrivateKey(this.privKey)}marshal(e){return p.encode({id:this.toBytes(),pubKey:this.marshalPubKey(),privKey:e?null:this.marshalPrivKey()}).finish()}toPrint(){let e=this.toB58String();e.startsWith("Qm")&&(e=e.slice(2));let t=6;return e.length"}toJSON(){return{id:this.toB58String(),privKey:T(this.marshalPrivKey()),pubKey:T(this.marshalPubKey())}}toHexString(){return f.encode(this.id).substring(1)}toBytes(){return this.id}toB58String(){return this._idB58String}toString(){if(!this._idCIDString){const e=n.createV1(114,l.decode(this.id));Object.defineProperty(this,"_idCIDString",{value:e.toString(),enumerable:!1})}return this._idCIDString}equals(e){if(e instanceof Uint8Array)return y(this.id,e);if(e.id)return y(this.id,e.id);throw new Error("not valid Id")}isEqual(e){return this.equals(e)}isValid(){return Boolean(this.privKey&&this.privKey.public&&this.privKey.public.bytes&&this.pubKey.bytes instanceof Uint8Array&&y(this.privKey.public.bytes,this.pubKey.bytes))}hasInlinePublicKey(){try{if(l.decode(this.id).code===m.code)return!0}catch(e){}return!1}},{className:"PeerId",symbolName:"@libp2p/js-peer-id/PeerId"});t=e.exports=E;const _=e=>e.bytes.length<=42?l.create(m.code,e.bytes).bytes:e.hash(),S=async(e,t)=>{const r=await _(t);return new E(r,e,t)};t.create=async e=>{(e=e||{}).bits=e.bits||2048,e.keyType=e.keyType||"RSA";const t=await h.generateKeyPair(e.keyType,e.bits);return S(t,t.public)},t.createFromHexString=e=>new E(f.decode("f"+e)),t.createFromBytes=e=>{try{const r=n.decode(e);if(!A(r))throw new Error("Supplied PeerID CID is invalid");return t.createFromCID(r)}catch{if(l.decode(e).code!==m.code)throw new Error("Supplied PeerID CID is invalid");return new E(e)}},t.createFromB58String=e=>t.createFromBytes(c.decode("z"+e));const A=e=>114===e.code||112===e.code;function T(e){if(e)return b(e,"base64pad")}t.createFromCID=e=>{if(!(e=n.asCID(e))||!A(e))throw new Error("Supplied PeerID CID is invalid");return new E(e.multihash.bytes)},t.createFromPubKey=async e=>{let t=e;if("string"==typeof t&&(t=g(e,"base64pad")),!(t instanceof Uint8Array))throw new Error("Supplied key is neither a base64 string nor a Uint8Array");const r=await h.unmarshalPublicKey(t);return S(void 0,r)},t.createFromPrivKey=async e=>{if("string"==typeof e&&(e=g(e,"base64pad")),!(e instanceof Uint8Array))throw new Error("Supplied key is neither a base64 string nor a Uint8Array");const t=await h.unmarshalPrivateKey(e);return S(t,t.public)},t.createFromJSON=async e=>{const t=c.decode("z"+e.id),r=e.privKey&&g(e.privKey,"base64pad"),n=e.pubKey&&g(e.pubKey,"base64pad"),i=n&&await h.unmarshalPublicKey(n);if(!r)return new E(t,void 0,i);const o=await h.unmarshalPrivateKey(r),s=await _(o.public);let a;if(i&&(a=await _(i)),i&&!y(s,a))throw new Error("Public and private key do not match");if(t&&!y(s,t))throw new Error("Id and private key do not match");return new E(t,o,i)},t.createFromProtobuf=async e=>{"string"==typeof e&&(e=g(e,"base16"));let t,r,{id:n,privKey:i,pubKey:o}=p.decode(e);if(i=!!i&&await h.unmarshalPrivateKey(i),o=!!o&&await h.unmarshalPublicKey(o),i&&(r=await _(i.public)),o&&(t=await _(o)),i){if(o&&!y(r,t))throw new Error("Public and private key do not match");return new E(r,i,i.public)}if(o)return new E(t,void 0,o);if(n)return new E(n);throw new Error("Protobuf did not contain any usable key material")},t.parse=e=>("1"!==e.charAt(0)&&"Q"!==e.charAt(0)||(e=`z${e}`),t.createFromBytes(w.decode(e))),t.isPeerId=e=>Boolean("object"==typeof e&&e._id&&e._idB58String)},28780:(e,t,r)=>{"use strict";var n=r(62100),i=n.Reader,o=n.Writer,s=n.util,a=n.roots["libp2p-peer-id"]||(n.roots["libp2p-peer-id"]={});a.PeerIdProto=function(){function e(e){if(e)for(var t=Object.keys(e),r=0;r>>3){case 1:n.id=e.bytes();break;case 2:n.pubKey=e.bytes();break;case 3:n.privKey=e.bytes();break;default:e.skipType(7&o)}}if(!n.hasOwnProperty("id"))throw s.ProtocolError("missing required 'id'",{instance:n});return n},e.fromObject=function(e){if(e instanceof a.PeerIdProto)return e;var t=new a.PeerIdProto;return null!=e.id&&("string"==typeof e.id?s.base64.decode(e.id,t.id=s.newBuffer(s.base64.length(e.id)),0):e.id.length&&(t.id=e.id)),null!=e.pubKey&&("string"==typeof e.pubKey?s.base64.decode(e.pubKey,t.pubKey=s.newBuffer(s.base64.length(e.pubKey)),0):e.pubKey.length&&(t.pubKey=e.pubKey)),null!=e.privKey&&("string"==typeof e.privKey?s.base64.decode(e.privKey,t.privKey=s.newBuffer(s.base64.length(e.privKey)),0):e.privKey.length&&(t.privKey=e.privKey)),t},e.toObject=function(e,t){t||(t={});var r={};return t.defaults&&(t.bytes===String?r.id="":(r.id=[],t.bytes!==Array&&(r.id=s.newBuffer(r.id))),t.bytes===String?r.pubKey="":(r.pubKey=[],t.bytes!==Array&&(r.pubKey=s.newBuffer(r.pubKey))),t.bytes===String?r.privKey="":(r.privKey=[],t.bytes!==Array&&(r.privKey=s.newBuffer(r.privKey)))),null!=e.id&&e.hasOwnProperty("id")&&(r.id=t.bytes===String?s.base64.encode(e.id,0,e.id.length):t.bytes===Array?Array.prototype.slice.call(e.id):e.id),null!=e.pubKey&&e.hasOwnProperty("pubKey")&&(r.pubKey=t.bytes===String?s.base64.encode(e.pubKey,0,e.pubKey.length):t.bytes===Array?Array.prototype.slice.call(e.pubKey):e.pubKey),null!=e.privKey&&e.hasOwnProperty("privKey")&&(r.privKey=t.bytes===String?s.base64.encode(e.privKey,0,e.privKey.length):t.bytes===Array?Array.prototype.slice.call(e.privKey):e.privKey),r},e.prototype.toJSON=function(){return this.constructor.toObject(this,n.util.toJSONOptions)},e}(),e.exports=a},290:(e,t,r)=>{"use strict";e.exports=r(96114).default},96114:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(28951),o=n(r(1476)),s=n(r(5003)),a=r(56512),c=["0.0.0.0/8","10.0.0.0/8","100.64.0.0/10","127.0.0.0/8","169.254.0.0/16","172.16.0.0/12","192.0.0.0/24","192.0.0.0/29","192.0.0.8/32","192.0.0.9/32","192.0.0.10/32","192.0.0.170/32","192.0.0.171/32","192.0.2.0/24","192.31.196.0/24","192.52.193.0/24","192.88.99.0/24","192.168.0.0/16","192.175.48.0/24","198.18.0.0/15","198.51.100.0/24","203.0.113.0/24","240.0.0.0/4","255.255.255.255/32"].map((e=>new i.Netmask(e)));function u(e){return/^::$/.test(e)||/^::1$/.test(e)||/^::f{4}:([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(e)||/^::f{4}:0.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(e)||/^64:ff9b::([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})\.([0-9]{1,3})$/.test(e)||/^100::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(e)||/^2001::([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(e)||/^2001:2[0-9a-fA-F]:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(e)||/^2001:db8:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(e)||/^2002:([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4}):?([0-9a-fA-F]{0,4})$/.test(e)||/^f[c-d]([0-9a-fA-F]{2,2}):/i.test(e)||/^fe[8-9a-bA-B][0-9a-fA-F]:/i.test(e)||/^ff([0-9a-fA-F]{2,2}):/i.test(e)}t.default=e=>{if(a.isValid(e)){const t=a.parse(e);if("ipv4"===t.kind())return function(e){for(let t of c)if(t.contains(e))return!0;return!1}(t.toNormalizedString());if("ipv6"===t.kind())return u(e)}else if(s.default(e)&&o.default.v6().test(e))return u(e)}},34155:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var a,c=[],u=!1,f=-1;function l(){u&&a&&(u=!1,a.length?c=a.concat(c):f=-1,c.length&&h())}function h(){if(!u){var e=s(l);u=!0;for(var t=c.length;t;){for(a=c,c=[];++f1)for(var r=1;r{"use strict";e.exports=r(89482)},89482:(e,t,r)=>{"use strict";var n=t;function i(){n.util._configure(),n.Writer._configure(n.BufferWriter),n.Reader._configure(n.BufferReader)}n.build="minimal",n.Writer=r(41173),n.BufferWriter=r(43155),n.Reader=r(51408),n.BufferReader=r(50593),n.util=r(99693),n.rpc=r(35994),n.roots=r(85054),n.configure=i,i()},51408:(e,t,r)=>{"use strict";e.exports=c;var n,i=r(99693),o=i.LongBits,s=i.utf8;function a(e,t){return RangeError("index out of range: "+e.pos+" + "+(t||1)+" > "+e.len)}function c(e){this.buf=e,this.pos=0,this.len=e.length}var u,f="undefined"!=typeof Uint8Array?function(e){if(e instanceof Uint8Array||Array.isArray(e))return new c(e);throw Error("illegal buffer")}:function(e){if(Array.isArray(e))return new c(e);throw Error("illegal buffer")},l=function(){return i.Buffer?function(e){return(c.create=function(e){return i.Buffer.isBuffer(e)?new n(e):f(e)})(e)}:f};function h(){var e=new o(0,0),t=0;if(!(this.len-this.pos>4)){for(;t<3;++t){if(this.pos>=this.len)throw a(this);if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e}return e.lo=(e.lo|(127&this.buf[this.pos++])<<7*t)>>>0,e}for(;t<4;++t)if(e.lo=(e.lo|(127&this.buf[this.pos])<<7*t)>>>0,this.buf[this.pos++]<128)return e;if(e.lo=(e.lo|(127&this.buf[this.pos])<<28)>>>0,e.hi=(e.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return e;if(t=0,this.len-this.pos>4){for(;t<5;++t)if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}else for(;t<5;++t){if(this.pos>=this.len)throw a(this);if(e.hi=(e.hi|(127&this.buf[this.pos])<<7*t+3)>>>0,this.buf[this.pos++]<128)return e}throw Error("invalid varint encoding")}function d(e,t){return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0}function p(){if(this.pos+8>this.len)throw a(this,8);return new o(d(this.buf,this.pos+=4),d(this.buf,this.pos+=4))}c.create=l(),c.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,c.prototype.uint32=(u=4294967295,function(){if(u=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return u;if(u=(u|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return u;if(u=(u|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return u;if(u=(u|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return u;if(u=(u|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return u;if((this.pos+=5)>this.len)throw this.pos=this.len,a(this,10);return u}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var e=this.uint32();return e>>>1^-(1&e)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw a(this,4);return d(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw a(this,4);return 0|d(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw a(this,4);var e=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,e},c.prototype.double=function(){if(this.pos+8>this.len)throw a(this,4);var e=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,e},c.prototype.bytes=function(){var e=this.uint32(),t=this.pos,r=this.pos+e;if(r>this.len)throw a(this,e);return this.pos+=e,Array.isArray(this.buf)?this.buf.slice(t,r):t===r?new this.buf.constructor(0):this._slice.call(this.buf,t,r)},c.prototype.string=function(){var e=this.bytes();return s.read(e,0,e.length)},c.prototype.skip=function(e){if("number"==typeof e){if(this.pos+e>this.len)throw a(this,e);this.pos+=e}else do{if(this.pos>=this.len)throw a(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(e){switch(e){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(e=7&this.uint32());)this.skipType(e);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+e+" at offset "+this.pos)}return this},c._configure=function(e){n=e,c.create=l(),n._configure();var t=i.Long?"toLong":"toNumber";i.merge(c.prototype,{int64:function(){return h.call(this)[t](!1)},uint64:function(){return h.call(this)[t](!0)},sint64:function(){return h.call(this).zzDecode()[t](!1)},fixed64:function(){return p.call(this)[t](!0)},sfixed64:function(){return p.call(this)[t](!1)}})}},50593:(e,t,r)=>{"use strict";e.exports=o;var n=r(51408);(o.prototype=Object.create(n.prototype)).constructor=o;var i=r(99693);function o(e){n.call(this,e)}o._configure=function(){i.Buffer&&(o.prototype._slice=i.Buffer.prototype.slice)},o.prototype.string=function(){var e=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+e,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+e,this.len))},o._configure()},85054:e=>{"use strict";e.exports={}},35994:(e,t,r)=>{"use strict";t.Service=r(77948)},77948:(e,t,r)=>{"use strict";e.exports=i;var n=r(99693);function i(e,t,r){if("function"!=typeof e)throw TypeError("rpcImpl must be a function");n.EventEmitter.call(this),this.rpcImpl=e,this.requestDelimited=Boolean(t),this.responseDelimited=Boolean(r)}(i.prototype=Object.create(n.EventEmitter.prototype)).constructor=i,i.prototype.rpcCall=function e(t,r,i,o,s){if(!o)throw TypeError("request must be specified");var a=this;if(!s)return n.asPromise(e,a,t,r,i,o);if(a.rpcImpl)try{return a.rpcImpl(t,r[a.requestDelimited?"encodeDelimited":"encode"](o).finish(),(function(e,r){if(e)return a.emit("error",e,t),s(e);if(null!==r){if(!(r instanceof i))try{r=i[a.responseDelimited?"decodeDelimited":"decode"](r)}catch(e){return a.emit("error",e,t),s(e)}return a.emit("data",r,t),s(null,r)}a.end(!0)}))}catch(e){return a.emit("error",e,t),void setTimeout((function(){s(e)}),0)}else setTimeout((function(){s(Error("already ended"))}),0)},i.prototype.end=function(e){return this.rpcImpl&&(e||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},1945:(e,t,r)=>{"use strict";e.exports=i;var n=r(99693);function i(e,t){this.lo=e>>>0,this.hi=t>>>0}var o=i.zero=new i(0,0);o.toNumber=function(){return 0},o.zzEncode=o.zzDecode=function(){return this},o.length=function(){return 1};var s=i.zeroHash="\0\0\0\0\0\0\0\0";i.fromNumber=function(e){if(0===e)return o;var t=e<0;t&&(e=-e);var r=e>>>0,n=(e-r)/4294967296>>>0;return t&&(n=~n>>>0,r=~r>>>0,++r>4294967295&&(r=0,++n>4294967295&&(n=0))),new i(r,n)},i.from=function(e){if("number"==typeof e)return i.fromNumber(e);if(n.isString(e)){if(!n.Long)return i.fromNumber(parseInt(e,10));e=n.Long.fromString(e)}return e.low||e.high?new i(e.low>>>0,e.high>>>0):o},i.prototype.toNumber=function(e){if(!e&&this.hi>>>31){var t=1+~this.lo>>>0,r=~this.hi>>>0;return t||(r=r+1>>>0),-(t+4294967296*r)}return this.lo+4294967296*this.hi},i.prototype.toLong=function(e){return n.Long?new n.Long(0|this.lo,0|this.hi,Boolean(e)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(e)}};var a=String.prototype.charCodeAt;i.fromHash=function(e){return e===s?o:new i((a.call(e,0)|a.call(e,1)<<8|a.call(e,2)<<16|a.call(e,3)<<24)>>>0,(a.call(e,4)|a.call(e,5)<<8|a.call(e,6)<<16|a.call(e,7)<<24)>>>0)},i.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},i.prototype.zzEncode=function(){var e=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^e)>>>0,this.lo=(this.lo<<1^e)>>>0,this},i.prototype.zzDecode=function(){var e=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^e)>>>0,this.hi=(this.hi>>>1^e)>>>0,this},i.prototype.length=function(){var e=this.lo,t=(this.lo>>>28|this.hi<<4)>>>0,r=this.hi>>>24;return 0===r?0===t?e<16384?e<128?1:2:e<2097152?3:4:t<16384?t<128?5:6:t<2097152?7:8:r<128?9:10}},99693:function(e,t,r){"use strict";var n=t;function i(e,t,r){for(var n=Object.keys(t),i=0;i0)},n.Buffer=function(){try{var e=n.inquire("buffer").Buffer;return e.prototype.utf8Write?e:null}catch(e){return null}}(),n._Buffer_from=null,n._Buffer_allocUnsafe=null,n.newBuffer=function(e){return"number"==typeof e?n.Buffer?n._Buffer_allocUnsafe(e):new n.Array(e):n.Buffer?n._Buffer_from(e):"undefined"==typeof Uint8Array?e:new Uint8Array(e)},n.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,n.Long=n.global.dcodeIO&&n.global.dcodeIO.Long||n.global.Long||n.inquire("long"),n.key2Re=/^true|false|0|1$/,n.key32Re=/^-?(?:0|[1-9][0-9]*)$/,n.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,n.longToHash=function(e){return e?n.LongBits.from(e).toHash():n.LongBits.zeroHash},n.longFromHash=function(e,t){var r=n.LongBits.fromHash(e);return n.Long?n.Long.fromBits(r.lo,r.hi,t):r.toNumber(Boolean(t))},n.merge=i,n.lcFirst=function(e){return e.charAt(0).toLowerCase()+e.substring(1)},n.newError=o,n.ProtocolError=o("ProtocolError"),n.oneOfGetter=function(e){for(var t={},r=0;r-1;--r)if(1===t[e[r]]&&void 0!==this[e[r]]&&null!==this[e[r]])return e[r]}},n.oneOfSetter=function(e){return function(t){for(var r=0;r{"use strict";e.exports=l;var n,i=r(99693),o=i.LongBits,s=i.base64,a=i.utf8;function c(e,t,r){this.fn=e,this.len=t,this.next=void 0,this.val=r}function u(){}function f(e){this.head=e.head,this.tail=e.tail,this.len=e.len,this.next=e.states}function l(){this.len=0,this.head=new c(u,0,0),this.tail=this.head,this.states=null}var h=function(){return i.Buffer?function(){return(l.create=function(){return new n})()}:function(){return new l}};function d(e,t,r){t[r]=255&e}function p(e,t){this.len=e,this.next=void 0,this.val=t}function y(e,t,r){for(;e.hi;)t[r++]=127&e.lo|128,e.lo=(e.lo>>>7|e.hi<<25)>>>0,e.hi>>>=7;for(;e.lo>127;)t[r++]=127&e.lo|128,e.lo=e.lo>>>7;t[r++]=e.lo}function g(e,t,r){t[r]=255&e,t[r+1]=e>>>8&255,t[r+2]=e>>>16&255,t[r+3]=e>>>24}l.create=h(),l.alloc=function(e){return new i.Array(e)},i.Array!==Array&&(l.alloc=i.pool(l.alloc,i.Array.prototype.subarray)),l.prototype._push=function(e,t,r){return this.tail=this.tail.next=new c(e,t,r),this.len+=t,this},p.prototype=Object.create(c.prototype),p.prototype.fn=function(e,t,r){for(;e>127;)t[r++]=127&e|128,e>>>=7;t[r]=e},l.prototype.uint32=function(e){return this.len+=(this.tail=this.tail.next=new p((e>>>=0)<128?1:e<16384?2:e<2097152?3:e<268435456?4:5,e)).len,this},l.prototype.int32=function(e){return e<0?this._push(y,10,o.fromNumber(e)):this.uint32(e)},l.prototype.sint32=function(e){return this.uint32((e<<1^e>>31)>>>0)},l.prototype.uint64=function(e){var t=o.from(e);return this._push(y,t.length(),t)},l.prototype.int64=l.prototype.uint64,l.prototype.sint64=function(e){var t=o.from(e).zzEncode();return this._push(y,t.length(),t)},l.prototype.bool=function(e){return this._push(d,1,e?1:0)},l.prototype.fixed32=function(e){return this._push(g,4,e>>>0)},l.prototype.sfixed32=l.prototype.fixed32,l.prototype.fixed64=function(e){var t=o.from(e);return this._push(g,4,t.lo)._push(g,4,t.hi)},l.prototype.sfixed64=l.prototype.fixed64,l.prototype.float=function(e){return this._push(i.float.writeFloatLE,4,e)},l.prototype.double=function(e){return this._push(i.float.writeDoubleLE,8,e)};var b=i.Array.prototype.set?function(e,t,r){t.set(e,r)}:function(e,t,r){for(var n=0;n>>0;if(!t)return this._push(d,1,0);if(i.isString(e)){var r=l.alloc(t=s.length(e));s.decode(e,r,0),e=r}return this.uint32(t)._push(b,t,e)},l.prototype.string=function(e){var t=a.length(e);return t?this.uint32(t)._push(a.write,t,e):this._push(d,1,0)},l.prototype.fork=function(){return this.states=new f(this),this.head=this.tail=new c(u,0,0),this.len=0,this},l.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(u,0,0),this.len=0),this},l.prototype.ldelim=function(){var e=this.head,t=this.tail,r=this.len;return this.reset().uint32(r),r&&(this.tail.next=e.next,this.tail=t,this.len+=r),this},l.prototype.finish=function(){for(var e=this.head.next,t=this.constructor.alloc(this.len),r=0;e;)e.fn(e.val,t,r),r+=e.len,e=e.next;return t},l._configure=function(e){n=e,l.create=h(),n._configure()}},43155:(e,t,r)=>{"use strict";e.exports=o;var n=r(41173);(o.prototype=Object.create(n.prototype)).constructor=o;var i=r(99693);function o(){n.call(this)}function s(e,t,r){e.length<40?i.utf8.write(e,t,r):t.utf8Write?t.utf8Write(e,r):t.write(e,r)}o._configure=function(){o.alloc=i._Buffer_allocUnsafe,o.writeBytesBuffer=i.Buffer&&i.Buffer.prototype instanceof Uint8Array&&"set"===i.Buffer.prototype.set.name?function(e,t,r){t.set(e,r)}:function(e,t,r){if(e.copy)e.copy(t,r,0,e.length);else for(var n=0;n>>0;return this.uint32(t),t&&this._push(o.writeBytesBuffer,t,e),this},o.prototype.string=function(e){var t=i.Buffer.byteLength(e);return this.uint32(t),t&&this._push(s,t,e),this},o._configure()},92592:(e,t,r)=>{const n=r(47138),i=r(95115),o=r(6907),s=r(93776);function a(e,t,r,o,s){const a=[].slice.call(arguments,1),c=a.length,u="function"==typeof a[c-1];if(!u&&!n())throw new Error("Callback required as last argument");if(!u){if(c<1)throw new Error("Too few arguments provided");return 1===c?(r=t,t=o=void 0):2!==c||t.getContext||(o=r,r=t,t=void 0),new Promise((function(n,s){try{const s=i.create(r,o);n(e(s,t,o))}catch(e){s(e)}}))}if(c<2)throw new Error("Too few arguments provided");2===c?(s=r,r=t,t=o=void 0):3===c&&(t.getContext&&void 0===s?(s=o,o=void 0):(s=o,o=r,r=t,t=void 0));try{const n=i.create(r,o);s(null,e(n,t,o))}catch(e){s(e)}}t.create=i.create,t.toCanvas=a.bind(null,o.render),t.toDataURL=a.bind(null,o.renderToDataURL),t.toString=a.bind(null,(function(e,t,r){return s.render(e,r)}))},47138:e=>{e.exports=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then}},21845:(e,t,r)=>{const n=r(10242).getSymbolSize;t.getRowColCoords=function(e){if(1===e)return[];const t=Math.floor(e/7)+2,r=n(e),i=145===r?26:2*Math.ceil((r-13)/(2*t-2)),o=[r-7];for(let e=1;e{const n=r(76910),i=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function o(e){this.mode=n.ALPHANUMERIC,this.data=e}o.getBitsLength=function(e){return 11*Math.floor(e/2)+e%2*6},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(e){let t;for(t=0;t+2<=this.data.length;t+=2){let r=45*i.indexOf(this.data[t]);r+=i.indexOf(this.data[t+1]),e.put(r,11)}this.data.length%2&&e.put(i.indexOf(this.data[t]),6)},e.exports=o},97245:e=>{function t(){this.buffer=[],this.length=0}t.prototype={get:function(e){const t=Math.floor(e/8);return 1==(this.buffer[t]>>>7-e%8&1)},put:function(e,t){for(let r=0;r>>t-r-1&1))},getLengthInBits:function(){return this.length},putBit:function(e){const t=Math.floor(this.length/8);this.buffer.length<=t&&this.buffer.push(0),e&&(this.buffer[t]|=128>>>this.length%8),this.length++}},e.exports=t},73280:e=>{function t(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}t.prototype.set=function(e,t,r,n){const i=e*this.size+t;this.data[i]=r,n&&(this.reservedBit[i]=!0)},t.prototype.get=function(e,t){return this.data[e*this.size+t]},t.prototype.xor=function(e,t,r){this.data[e*this.size+t]^=r},t.prototype.isReserved=function(e,t){return this.reservedBit[e*this.size+t]},e.exports=t},43424:(e,t,r)=>{const n=r(62378),i=r(76910);function o(e){this.mode=i.BYTE,this.data=new Uint8Array(n(e))}o.getBitsLength=function(e){return 8*e},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(e){for(let t=0,r=this.data.length;t{const n=r(64908),i=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],o=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];t.getBlocksCount=function(e,t){switch(t){case n.L:return i[4*(e-1)+0];case n.M:return i[4*(e-1)+1];case n.Q:return i[4*(e-1)+2];case n.H:return i[4*(e-1)+3];default:return}},t.getTotalCodewordsCount=function(e,t){switch(t){case n.L:return o[4*(e-1)+0];case n.M:return o[4*(e-1)+1];case n.Q:return o[4*(e-1)+2];case n.H:return o[4*(e-1)+3];default:return}}},64908:(e,t)=>{t.L={bit:1},t.M={bit:0},t.Q={bit:3},t.H={bit:2},t.isValid=function(e){return e&&void 0!==e.bit&&e.bit>=0&&e.bit<4},t.from=function(e,r){if(t.isValid(e))return e;try{return function(e){if("string"!=typeof e)throw new Error("Param is not a string");switch(e.toLowerCase()){case"l":case"low":return t.L;case"m":case"medium":return t.M;case"q":case"quartile":return t.Q;case"h":case"high":return t.H;default:throw new Error("Unknown EC Level: "+e)}}(e)}catch(e){return r}}},76526:(e,t,r)=>{const n=r(10242).getSymbolSize;t.getPositions=function(e){const t=n(e);return[[0,0],[t-7,0],[0,t-7]]}},61642:(e,t,r)=>{const n=r(10242),i=n.getBCHDigit(1335);t.getEncodedBits=function(e,t){const r=e.bit<<3|t;let o=r<<10;for(;n.getBCHDigit(o)-i>=0;)o^=1335<{const r=new Uint8Array(512),n=new Uint8Array(256);!function(){let e=1;for(let t=0;t<255;t++)r[t]=e,n[e]=t,e<<=1,256&e&&(e^=285);for(let e=255;e<512;e++)r[e]=r[e-255]}(),t.log=function(e){if(e<1)throw new Error("log("+e+")");return n[e]},t.exp=function(e){return r[e]},t.mul=function(e,t){return 0===e||0===t?0:r[n[e]+n[t]]}},35442:(e,t,r)=>{const n=r(76910),i=r(10242);function o(e){this.mode=n.KANJI,this.data=e}o.getBitsLength=function(e){return 13*e},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(e){let t;for(t=0;t=33088&&r<=40956)r-=33088;else{if(!(r>=57408&&r<=60351))throw new Error("Invalid SJIS character: "+this.data[t]+"\nMake sure your charset is UTF-8");r-=49472}r=192*(r>>>8&255)+(255&r),e.put(r,13)}},e.exports=o},27126:(e,t)=>{t.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};function r(e,r,n){switch(e){case t.Patterns.PATTERN000:return(r+n)%2==0;case t.Patterns.PATTERN001:return r%2==0;case t.Patterns.PATTERN010:return n%3==0;case t.Patterns.PATTERN011:return(r+n)%3==0;case t.Patterns.PATTERN100:return(Math.floor(r/2)+Math.floor(n/3))%2==0;case t.Patterns.PATTERN101:return r*n%2+r*n%3==0;case t.Patterns.PATTERN110:return(r*n%2+r*n%3)%2==0;case t.Patterns.PATTERN111:return(r*n%3+(r+n)%2)%2==0;default:throw new Error("bad maskPattern:"+e)}}t.isValid=function(e){return null!=e&&""!==e&&!isNaN(e)&&e>=0&&e<=7},t.from=function(e){return t.isValid(e)?parseInt(e,10):void 0},t.getPenaltyN1=function(e){const t=e.size;let r=0,n=0,i=0,o=null,s=null;for(let a=0;a=5&&(r+=n-5+3),o=t,n=1),t=e.get(c,a),t===s?i++:(i>=5&&(r+=i-5+3),s=t,i=1)}n>=5&&(r+=n-5+3),i>=5&&(r+=i-5+3)}return r},t.getPenaltyN2=function(e){const t=e.size;let r=0;for(let n=0;n=10&&(1488===n||93===n)&&r++,i=i<<1&2047|e.get(s,o),s>=10&&(1488===i||93===i)&&r++}return 40*r},t.getPenaltyN4=function(e){let t=0;const r=e.data.length;for(let n=0;n{const n=r(43114),i=r(7007);t.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},t.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},t.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},t.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},t.MIXED={bit:-1},t.getCharCountIndicator=function(e,t){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!n.isValid(t))throw new Error("Invalid version: "+t);return t>=1&&t<10?e.ccBits[0]:t<27?e.ccBits[1]:e.ccBits[2]},t.getBestModeForData=function(e){return i.testNumeric(e)?t.NUMERIC:i.testAlphanumeric(e)?t.ALPHANUMERIC:i.testKanji(e)?t.KANJI:t.BYTE},t.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")},t.isValid=function(e){return e&&e.bit&&e.ccBits},t.from=function(e,r){if(t.isValid(e))return e;try{return function(e){if("string"!=typeof e)throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return t.NUMERIC;case"alphanumeric":return t.ALPHANUMERIC;case"kanji":return t.KANJI;case"byte":return t.BYTE;default:throw new Error("Unknown mode: "+e)}}(e)}catch(e){return r}}},41085:(e,t,r)=>{const n=r(76910);function i(e){this.mode=n.NUMERIC,this.data=e.toString()}i.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(e){let t,r,n;for(t=0;t+3<=this.data.length;t+=3)r=this.data.substr(t,3),n=parseInt(r,10),e.put(n,10);const i=this.data.length-t;i>0&&(r=this.data.substr(t),n=parseInt(r,10),e.put(n,3*i+1))},e.exports=i},26143:(e,t,r)=>{const n=r(69729);t.mul=function(e,t){const r=new Uint8Array(e.length+t.length-1);for(let i=0;i=0;){const e=r[0];for(let i=0;i{const n=r(10242),i=r(64908),o=r(97245),s=r(73280),a=r(21845),c=r(76526),u=r(27126),f=r(35393),l=r(52882),h=r(23103),d=r(61642),p=r(76910),y=r(16130);function g(e,t,r){const n=e.size,i=d.getEncodedBits(t,r);let o,s;for(o=0;o<15;o++)s=1==(i>>o&1),o<6?e.set(o,8,s,!0):o<8?e.set(o+1,8,s,!0):e.set(n-15+o,8,s,!0),o<8?e.set(8,n-o-1,s,!0):o<9?e.set(8,15-o-1+1,s,!0):e.set(8,15-o-1,s,!0);e.set(n-8,8,1,!0)}function b(e,t,r,i){let d;if(Array.isArray(e))d=y.fromArray(e);else{if("string"!=typeof e)throw new Error("Invalid data");{let n=t;if(!n){const t=y.rawSplit(e);n=h.getBestVersionForData(t,r)}d=y.fromString(e,n||40)}}const b=h.getBestVersionForData(d,r);if(!b)throw new Error("The amount of data is too big to be stored in a QR Code");if(t){if(t=0&&t<=6&&(0===n||6===n)||n>=0&&n<=6&&(0===t||6===t)||t>=2&&t<=4&&n>=2&&n<=4?e.set(i+t,o+n,!0,!0):e.set(i+t,o+n,!1,!0))}}(w,t),function(e){const t=e.size;for(let r=8;r=7&&function(e,t){const r=e.size,n=h.getEncodedBits(t);let i,o,s;for(let t=0;t<18;t++)i=Math.floor(t/3),o=t%3+r-8-3,s=1==(n>>t&1),e.set(i,o,s,!0),e.set(o,i,s,!0)}(w,t),function(e,t){const r=e.size;let n=-1,i=r-1,o=7,s=0;for(let a=r-1;a>0;a-=2)for(6===a&&a--;;){for(let r=0;r<2;r++)if(!e.isReserved(i,a-r)){let n=!1;s>>o&1)),e.set(i,a-r,n),o--,-1===o&&(s++,o=7)}if(i+=n,i<0||r<=i){i-=n,n=-n;break}}}(w,m),isNaN(i)&&(i=u.getBestMask(w,g.bind(null,w,r))),u.applyMask(i,w),g(w,r,i),{modules:w,version:t,errorCorrectionLevel:r,maskPattern:i,segments:d}}t.create=function(e,t){if(void 0===e||""===e)throw new Error("No input text");let r,o,s=i.M;return void 0!==t&&(s=i.from(t.errorCorrectionLevel,i.M),r=h.from(t.version),o=u.from(t.maskPattern),t.toSJISFunc&&n.setToSJISFunction(t.toSJISFunc)),b(e,r,s,o)}},52882:(e,t,r)=>{const n=r(26143);function i(e){this.genPoly=void 0,this.degree=e,this.degree&&this.initialize(this.degree)}i.prototype.initialize=function(e){this.degree=e,this.genPoly=n.generateECPolynomial(this.degree)},i.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");const t=new Uint8Array(e.length+this.degree);t.set(e);const r=n.mod(t,this.genPoly),i=this.degree-r.length;if(i>0){const e=new Uint8Array(this.degree);return e.set(r,i),e}return r},e.exports=i},7007:(e,t)=>{let r="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";r=r.replace(/u/g,"\\u");const n="(?:(?![A-Z0-9 $%*+\\-./:]|"+r+")(?:.|[\r\n]))+";t.KANJI=new RegExp(r,"g"),t.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),t.BYTE=new RegExp(n,"g"),t.NUMERIC=new RegExp("[0-9]+","g"),t.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");const i=new RegExp("^"+r+"$"),o=new RegExp("^[0-9]+$"),s=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");t.testKanji=function(e){return i.test(e)},t.testNumeric=function(e){return o.test(e)},t.testAlphanumeric=function(e){return s.test(e)}},16130:(e,t,r)=>{const n=r(76910),i=r(41085),o=r(8260),s=r(43424),a=r(35442),c=r(7007),u=r(10242),f=r(65987);function l(e){return unescape(encodeURIComponent(e)).length}function h(e,t,r){const n=[];let i;for(;null!==(i=e.exec(r));)n.push({data:i[0],index:i.index,mode:t,length:i[0].length});return n}function d(e){const t=h(c.NUMERIC,n.NUMERIC,e),r=h(c.ALPHANUMERIC,n.ALPHANUMERIC,e);let i,o;return u.isKanjiModeEnabled()?(i=h(c.BYTE,n.BYTE,e),o=h(c.KANJI,n.KANJI,e)):(i=h(c.BYTE_KANJI,n.BYTE,e),o=[]),t.concat(r,i,o).sort((function(e,t){return e.index-t.index})).map((function(e){return{data:e.data,mode:e.mode,length:e.length}}))}function p(e,t){switch(t){case n.NUMERIC:return i.getBitsLength(e);case n.ALPHANUMERIC:return o.getBitsLength(e);case n.KANJI:return a.getBitsLength(e);case n.BYTE:return s.getBitsLength(e)}}function y(e,t){let r;const c=n.getBestModeForData(e);if(r=n.from(t,c),r!==n.BYTE&&r.bit=0?e[e.length-1]:null;return r&&r.mode===t.mode?(e[e.length-1].data+=t.data,e):(e.push(t),e)}),[]))},t.rawSplit=function(e){return t.fromArray(d(e,u.isKanjiModeEnabled()))}},10242:(e,t)=>{let r;const n=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];t.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return 4*e+17},t.getSymbolTotalCodewords=function(e){return n[e]},t.getBCHDigit=function(e){let t=0;for(;0!==e;)t++,e>>>=1;return t},t.setToSJISFunction=function(e){if("function"!=typeof e)throw new Error('"toSJISFunc" is not a valid function.');r=e},t.isKanjiModeEnabled=function(){return void 0!==r},t.toSJIS=function(e){return r(e)}},43114:(e,t)=>{t.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}},23103:(e,t,r)=>{const n=r(10242),i=r(35393),o=r(64908),s=r(76910),a=r(43114),c=n.getBCHDigit(7973);function u(e,t){return s.getCharCountIndicator(e,t)+4}function f(e,t){let r=0;return e.forEach((function(e){const n=u(e.mode,t);r+=n+e.getBitsLength()})),r}t.from=function(e,t){return a.isValid(e)?parseInt(e,10):t},t.getCapacity=function(e,t,r){if(!a.isValid(e))throw new Error("Invalid QR Code version");void 0===r&&(r=s.BYTE);const o=8*(n.getSymbolTotalCodewords(e)-i.getTotalCodewordsCount(e,t));if(r===s.MIXED)return o;const c=o-u(r,e);switch(r){case s.NUMERIC:return Math.floor(c/10*3);case s.ALPHANUMERIC:return Math.floor(c/11*2);case s.KANJI:return Math.floor(c/13);case s.BYTE:default:return Math.floor(c/8)}},t.getBestVersionForData=function(e,r){let n;const i=o.from(r,o.M);if(Array.isArray(e)){if(e.length>1)return function(e,r){for(let n=1;n<=40;n++)if(f(e,n)<=t.getCapacity(n,r,s.MIXED))return n}(e,i);if(0===e.length)return 1;n=e[0]}else n=e;return function(e,r,n){for(let i=1;i<=40;i++)if(r<=t.getCapacity(i,n,e))return i}(n.mode,n.getLength(),i)},t.getEncodedBits=function(e){if(!a.isValid(e)||e<7)throw new Error("Invalid QR Code version");let t=e<<12;for(;n.getBCHDigit(t)-c>=0;)t^=7973<{const n=r(89653);t.render=function(e,t,r){let i=r,o=t;void 0!==i||t&&t.getContext||(i=t,t=void 0),t||(o=function(){try{return document.createElement("canvas")}catch(e){throw new Error("You need to specify a canvas element")}}()),i=n.getOptions(i);const s=n.getImageWidth(e.modules.size,i),a=o.getContext("2d"),c=a.createImageData(s,s);return n.qrToImageData(c.data,e,i),function(e,t,r){e.clearRect(0,0,t.width,t.height),t.style||(t.style={}),t.height=r,t.width=r,t.style.height=r+"px",t.style.width=r+"px"}(a,o,s),a.putImageData(c,0,0),o},t.renderToDataURL=function(e,r,n){let i=n;void 0!==i||r&&r.getContext||(i=r,r=void 0),i||(i={});const o=t.render(e,r,i),s=i.type||"image/png",a=i.rendererOpts||{};return o.toDataURL(s,a.quality)}},93776:(e,t,r)=>{const n=r(89653);function i(e,t){const r=e.a/255,n=t+'="'+e.hex+'"';return r<1?n+" "+t+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function o(e,t,r){let n=e+t;return void 0!==r&&(n+=" "+r),n}t.render=function(e,t,r){const s=n.getOptions(t),a=e.modules.size,c=e.modules.data,u=a+2*s.margin,f=s.color.light.a?"':"",l="0&&u>0&&e[c-1]||(n+=s?o("M",u+r,.5+f+r):o("m",i,0),i=0,s=!1),u+1',h='viewBox="0 0 '+u+" "+u+'"',d=''+f+l+"\n";return"function"==typeof r&&r(null,d),d}},89653:(e,t)=>{function r(e){if("number"==typeof e&&(e=e.toString()),"string"!=typeof e)throw new Error("Color should be defined as hex string");let t=e.slice().replace("#","").split("");if(t.length<3||5===t.length||t.length>8)throw new Error("Invalid hex color: "+e);3!==t.length&&4!==t.length||(t=Array.prototype.concat.apply([],t.map((function(e){return[e,e]})))),6===t.length&&t.push("F","F");const r=parseInt(t.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:255&r,hex:"#"+t.slice(0,6).join("")}}t.getOptions=function(e){e||(e={}),e.color||(e.color={});const t=void 0===e.margin||null===e.margin||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,i=e.scale||4;return{width:n,scale:n?4:i,margin:t,color:{dark:r(e.color.dark||"#000000ff"),light:r(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}},t.getScale=function(e,t){return t.width&&t.width>=e+2*t.margin?t.width/(e+2*t.margin):t.scale},t.getImageWidth=function(e,r){const n=t.getScale(e,r);return Math.floor((e+2*r.margin)*n)},t.qrToImageData=function(e,r,n){const i=r.modules.size,o=r.modules.data,s=t.getScale(i,n),a=Math.floor((i+2*n.margin)*s),c=n.margin*s,u=[n.color.light,n.color.dark];for(let t=0;t=c&&r>=c&&t{"use strict";e.exports=s;var n=r(57824),i=s.prototype,o=new Date%1e9;function s(e){e=e||{},this.id=e.id||(1e9*Math.random()>>>0)+o++,this.max=e.max||1/0,this.items=e.items||[],this._lookup={},this.size=this.items.length,this.lastModified=new Date(e.lastModified||new Date);for(var t,r,n=this.items.length;n--;)t=this.items[n],r=new Date(t.expires)-new Date,this._lookup[t.key]=t,r>0?this.expire(t.key,r):r<=0&&this.delete(t.key)}i.has=function(e){return e in this._lookup},i.get=function(e){if(!this.has(e))return null;var t=this._lookup[e];return t.refresh&&this.expire(e,t.refresh),this.items.splice(this.items.indexOf(t),1),this.items.push(t),t.value},i.meta=function(e){if(!this.has(e))return null;var t=this._lookup[e];return"meta"in t?t.meta:null},i.set=function(e,t,r){var n=this._lookup[e],i=this._lookup[e]={key:e,value:t};return this.lastModified=new Date,n?(clearTimeout(n.timeout),this.items.splice(this.items.indexOf(n),1,i)):(this.size>=this.max&&this.delete(this.items[0].key),this.items.push(i),this.size++),r&&("ttl"in r&&this.expire(e,r.ttl),"meta"in r&&(i.meta=r.meta),r.refresh&&(i.refresh=r.ttl)),this},i.delete=function(e){var t=this._lookup[e];return!!t&&(this.lastModified=new Date,this.items.splice(this.items.indexOf(t),1),clearTimeout(t.timeout),delete this._lookup[e],this.size--,this)},i.expire=function(e,t){var r=t||0,i=this._lookup[e];if(!i)return this;if("string"==typeof r&&(r=n(t)),"number"!=typeof r)throw new TypeError("Expiration time must be a string or number.");return clearTimeout(i.timeout),i.timeout=setTimeout(this.delete.bind(this,i.key),r),i.expires=Number(new Date)+r,this},i.clear=function(){for(var e=this.items.length;e--;)this.delete(this.items[e].key);return this},i.toJSON=function(){for(var e,t=new Array(this.items.length),r=t.length;r--;)e=this.items[r],t[r]={key:e.key,meta:e.meta,value:e.value,expires:e.expires,refresh:e.refresh};return{id:this.id,max:isFinite(this.max)?this.max:void 0,lastModified:this.lastModified,items:t}}},82916:(e,t,r)=>{"use strict";const n=r(41807);class i{constructor(e,t,r){const i=this;this._started=n(),this._rescheduled=0,this._scheduled=t,this._args=r,this._triggered=!1,this._timerWrapper=()=>{i._rescheduled>0?(i._scheduled=i._rescheduled-(n()-i._started),i._schedule(i._scheduled)):(i._triggered=!0,e.apply(null,i._args))},this._timer=setTimeout(this._timerWrapper,t)}reschedule(e){e||(e=this._scheduled);const t=n();t+e-(this._started+this._scheduled)<0?(clearTimeout(this._timer),this._schedule(e)):this._triggered?this._schedule(e):(this._started=t,this._rescheduled=e)}_schedule(e){this._triggered=!1,this._started=n(),this._rescheduled=0,this._scheduled=e,this._timer=setTimeout(this._timerWrapper,e)}clear(){clearTimeout(this._timer)}}e.exports=function(){if("function"!=typeof arguments[0])throw new Error("callback needed");if("number"!=typeof arguments[1])throw new Error("timeout needed");let e;if(arguments.length>0){e=new Array(arguments.length-2);for(var t=0;t{"use strict";e.exports=function(){return Date.now()}},99353:(e,t,r)=>{e.exports=r(71846)},71846:(e,t,r)=>{var n=r(41960);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&(e.forever||e.retries===1/0),unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],i=0;i{function t(e,t){"boolean"==typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._timer=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts.slice(0)},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timer&&clearTimeout(this._timer),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.push(e),this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(0,this._errors.length-1),r=this._cachedTimeouts.slice(-1)}var n=this;return this._timer=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r),this._options.unref&&this._timer.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=i,r=s)}return t}},67652:(e,t,r)=>{"use strict";r.r(t),r.d(t,{ArgumentOutOfRangeError:()=>ft,AsyncSubject:()=>oe,BehaviorSubject:()=>re,ConnectableObservable:()=>$,EMPTY:()=>ke,EmptyError:()=>at,NEVER:()=>Jt,NotFoundError:()=>lt,Notification:()=>it,NotificationKind:()=>Fe,ObjectUnsubscribedError:()=>Z,Observable:()=>U,ReplaySubject:()=>ie,Scheduler:()=>ge,SequenceError:()=>ht,Subject:()=>ee,Subscriber:()=>C,Subscription:()=>y,TimeoutError:()=>pt,UnsubscriptionError:()=>d,VirtualAction:()=>Re,VirtualTimeScheduler:()=>Pe,animationFrame:()=>Ce,animationFrameScheduler:()=>Ie,animationFrames:()=>Y,asap:()=>ve,asapScheduler:()=>me,async:()=>Ee,asyncScheduler:()=>we,audit:()=>dr,auditTime:()=>pr,bindCallback:()=>Et,bindNodeCallback:()=>_t,buffer:()=>yr,bufferCount:()=>gr,bufferTime:()=>br,bufferToggle:()=>mr,bufferWhen:()=>vr,catchError:()=>wr,combineAll:()=>Cr,combineLatest:()=>Rt,combineLatestAll:()=>Ir,combineLatestWith:()=>Rr,concat:()=>Lt,concatAll:()=>Nt,concatMap:()=>kr,concatMapTo:()=>Br,concatWith:()=>Mr,config:()=>v,connect:()=>Nr,connectable:()=>Ut,count:()=>Lr,debounce:()=>Dr,debounceTime:()=>Kr,defaultIfEmpty:()=>Ur,defer:()=>Dt,delay:()=>Hr,delayWhen:()=>qr,dematerialize:()=>zr,distinct:()=>$r,distinctUntilChanged:()=>Gr,distinctUntilKeyChanged:()=>Yr,elementAt:()=>Jr,empty:()=>Be,endWith:()=>Zr,every:()=>en,exhaust:()=>rn,exhaustAll:()=>tn,exhaustMap:()=>nn,expand:()=>on,filter:()=>sr,finalize:()=>sn,find:()=>an,findIndex:()=>un,first:()=>fn,firstValueFrom:()=>ut,flatMap:()=>bn,forkJoin:()=>jt,from:()=>tt,fromEvent:()=>Ht,fromEventPattern:()=>$t,generate:()=>Gt,groupBy:()=>ln,identity:()=>L,ignoreElements:()=>Vr,iif:()=>Wt,interval:()=>Xt,isEmpty:()=>hn,isObservable:()=>st,last:()=>pn,lastValueFrom:()=>ct,map:()=>bt,mapTo:()=>Fr,materialize:()=>yn,max:()=>gn,merge:()=>Qt,mergeAll:()=>Ot,mergeMap:()=>Mt,mergeMapTo:()=>mn,mergeScan:()=>vn,mergeWith:()=>En,min:()=>_n,multicast:()=>Sn,never:()=>Zt,noop:()=>_,observable:()=>N,observeOn:()=>Xe,of:()=>rt,onErrorResumeNext:()=>nr,pairs:()=>ir,pairwise:()=>An,partition:()=>ar,pipe:()=>D,pluck:()=>Tn,publish:()=>In,publishBehavior:()=>Cn,publishLast:()=>Pn,publishReplay:()=>Rn,queue:()=>Ae,queueScheduler:()=>Se,race:()=>cr,raceWith:()=>kn,range:()=>fr,reduce:()=>_r,refCount:()=>z,repeat:()=>Bn,repeatWhen:()=>xn,retry:()=>Mn,retryWhen:()=>On,sample:()=>Nn,sampleTime:()=>Ln,scan:()=>Dn,scheduled:()=>et,sequenceEqual:()=>Kn,share:()=>Un,shareReplay:()=>Vn,single:()=>Fn,skip:()=>qn,skipLast:()=>Hn,skipUntil:()=>zn,skipWhile:()=>$n,startWith:()=>Gn,subscribeOn:()=>Qe,switchAll:()=>Yn,switchMap:()=>Wn,switchMapTo:()=>Xn,switchScan:()=>Qn,take:()=>jr,takeLast:()=>dn,takeUntil:()=>Jn,takeWhile:()=>Zn,tap:()=>ei,throttle:()=>ri,throttleTime:()=>ni,throwError:()=>nt,throwIfEmpty:()=>Xr,timeInterval:()=>ii,timeout:()=>yt,timeoutWith:()=>si,timer:()=>Yt,timestamp:()=>ai,toArray:()=>Ar,using:()=>lr,window:()=>ci,windowCount:()=>ui,windowTime:()=>fi,windowToggle:()=>li,windowWhen:()=>hi,withLatestFrom:()=>di,zip:()=>hr,zipAll:()=>pi,zipWith:()=>gi});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function o(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!((i=(i=s.trys).length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function a(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)s.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return s}function c(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1||a(e,t)}))})}function a(e,t){try{(r=i[e](t)).value instanceof u?Promise.resolve(r.value.v).then(c,f):l(o[0][2],r)}catch(e){l(o[0][3],e)}var r}function c(e){a("next",e)}function f(e){a("throw",e)}function l(e,t){e(t),o.shift(),o.length&&a(o[0][0],o[0][1])}}function l(e){return"function"==typeof e}function h(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}Object.create,Object.create;var d=h((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function p(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var y=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._teardowns=null}return e.prototype.unsubscribe=function(){var e,t,r,n,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var u=s(o),f=u.next();!f.done;f=u.next())f.value.remove(this)}catch(t){e={error:t}}finally{try{f&&!f.done&&(t=u.return)&&t.call(u)}finally{if(e)throw e.error}}else o.remove(this);var h=this.initialTeardown;if(l(h))try{h()}catch(e){i=e instanceof d?e.errors:[e]}var p=this._teardowns;if(p){this._teardowns=null;try{for(var y=s(p),g=y.next();!g.done;g=y.next()){var b=g.value;try{m(b)}catch(e){i=null!=i?i:[],e instanceof d?i=c(c([],a(i)),a(e.errors)):i.push(e)}}}catch(e){r={error:e}}finally{try{g&&!g.done&&(n=y.return)&&n.call(y)}finally{if(r)throw r.error}}}if(i)throw new d(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)m(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._teardowns=null!==(r=this._teardowns)&&void 0!==r?r:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&p(t,e)},e.prototype.remove=function(t){var r=this._teardowns;r&&p(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),g=y.EMPTY;function b(e){return e instanceof y||e&&"closed"in e&&l(e.remove)&&l(e.add)&&l(e.unsubscribe)}function m(e){l(e)?e():e.unsubscribe()}var v={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},w={setTimeout:function(){for(var e=[],t=0;t0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,r=t.hasError,n=t.isStopped,i=t.observers;return r||n?g:(i.push(e),new y((function(){return p(i,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,r=t.hasError,n=t.thrownError,i=t.isStopped;r?e.error(n):i&&e.complete()},t.prototype.asObservable=function(){var e=new U;return e.source=this,e},t.create=function(e,t){return new te(e,t)},t}(U),te=function(e){function t(t,r){var n=e.call(this)||this;return n.destination=t,n.source=r,n}return i(t,e),t.prototype.next=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)},t.prototype.error=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:g},t}(ee),re=function(e){function t(t){var r=e.call(this)||this;return r._value=t,r}return i(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(t){var r=e.prototype._subscribe.call(this,t);return!r.closed&&t.next(this._value),r},t.prototype.getValue=function(){var e=this,t=e.hasError,r=e.thrownError,n=e._value;if(t)throw r;return this._throwIfClosed(),n},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(ee),ne={now:function(){return(ne.delegate||Date).now()},delegate:void 0},ie=function(e){function t(t,r,n){void 0===t&&(t=1/0),void 0===r&&(r=1/0),void 0===n&&(n=ne);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=r,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=r===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,r),i}return i(t,e),t.prototype.next=function(t){var r=this,n=r.isStopped,i=r._buffer,o=r._infiniteTimeWindow,s=r._timestampProvider,a=r._windowTime;n||(i.push(t),!o&&i.push(s.now()+a)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),r=this._infiniteTimeWindow,n=this._buffer.slice(),i=0;i0?e.prototype.requestAsyncId.call(this,t,r,n):(t.actions.push(this),t._scheduled||(t._scheduled=pe.setImmediate(t.flush.bind(t,void 0))))},t.prototype.recycleAsyncId=function(t,r,n){if(void 0===n&&(n=0),null!=n&&n>0||null==n&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,r,n);t.actions.some((function(e){return e.id===r}))||(pe.clearImmediate(r),t._scheduled=void 0)},t}(ce),ge=function(){function e(t,r){void 0===r&&(r=e.now),this.schedulerActionCtor=t,this.now=r}return e.prototype.schedule=function(e,t,r){return void 0===t&&(t=0),new this.schedulerActionCtor(this,e).schedule(r,t)},e.now=ne.now,e}(),be=function(e){function t(t,r){void 0===r&&(r=ge.now);var n=e.call(this,t,r)||this;return n.actions=[],n._active=!1,n._scheduled=void 0,n}return i(t,e),t.prototype.flush=function(e){var t=this.actions;if(this._active)t.push(e);else{var r;this._active=!0;do{if(r=e.execute(e.state,e.delay))break}while(e=t.shift());if(this._active=!1,r){for(;e=t.shift();)e.unsubscribe();throw r}}},t}(ge),me=new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.flush=function(e){this._active=!0;var t=this._scheduled;this._scheduled=void 0;var r,n=this.actions;e=e||n.shift();do{if(r=e.execute(e.state,e.delay))break}while((e=n[0])&&e.id===t&&n.shift());if(this._active=!1,r){for(;(e=n[0])&&e.id===t&&n.shift();)e.unsubscribe();throw r}},t}(be))(ye),ve=me,we=new be(ce),Ee=we,_e=function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.scheduler=t,n.work=r,n}return i(t,e),t.prototype.schedule=function(t,r){return void 0===r&&(r=0),r>0?e.prototype.schedule.call(this,t,r):(this.delay=r,this.state=t,this.scheduler.flush(this),this)},t.prototype.execute=function(t,r){return r>0||this.closed?e.prototype.execute.call(this,t,r):this._execute(t,r)},t.prototype.requestAsyncId=function(t,r,n){return void 0===n&&(n=0),null!=n&&n>0||null==n&&this.delay>0?e.prototype.requestAsyncId.call(this,t,r,n):t.flush(this)},t}(ce),Se=new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t}(be))(_e),Ae=Se,Te=function(e){function t(t,r){var n=e.call(this,t,r)||this;return n.scheduler=t,n.work=r,n}return i(t,e),t.prototype.requestAsyncId=function(t,r,n){return void 0===n&&(n=0),null!==n&&n>0?e.prototype.requestAsyncId.call(this,t,r,n):(t.actions.push(this),t._scheduled||(t._scheduled=W.requestAnimationFrame((function(){return t.flush(void 0)}))))},t.prototype.recycleAsyncId=function(t,r,n){if(void 0===n&&(n=0),null!=n&&n>0||null==n&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,r,n);t.actions.some((function(e){return e.id===r}))||(W.cancelAnimationFrame(r),t._scheduled=void 0)},t}(ce),Ie=new(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i(t,e),t.prototype.flush=function(e){this._active=!0;var t=this._scheduled;this._scheduled=void 0;var r,n=this.actions;e=e||n.shift();do{if(r=e.execute(e.state,e.delay))break}while((e=n[0])&&e.id===t&&n.shift());if(this._active=!1,r){for(;(e=n[0])&&e.id===t&&n.shift();)e.unsubscribe();throw r}},t}(be))(Te),Ce=Ie,Pe=function(e){function t(t,r){void 0===t&&(t=Re),void 0===r&&(r=1/0);var n=e.call(this,t,(function(){return n.frame}))||this;return n.maxFrames=r,n.frame=0,n.index=-1,n}return i(t,e),t.prototype.flush=function(){for(var e,t,r=this.actions,n=this.maxFrames;(t=r[0])&&t.delay<=n&&(r.shift(),this.frame=t.delay,!(e=t.execute(t.state,t.delay))););if(e){for(;t=r.shift();)t.unsubscribe();throw e}},t.frameTimeFactor=10,t}(be),Re=function(e){function t(t,r,n){void 0===n&&(n=t.index+=1);var i=e.call(this,t,r)||this;return i.scheduler=t,i.work=r,i.index=n,i.active=!0,i.index=t.index=n,i}return i(t,e),t.prototype.schedule=function(r,n){if(void 0===n&&(n=0),Number.isFinite(n)){if(!this.id)return e.prototype.schedule.call(this,r,n);this.active=!1;var i=new t(this.scheduler,this.work);return this.add(i),i.schedule(r,n)}return y.EMPTY},t.prototype.requestAsyncId=function(e,r,n){void 0===n&&(n=0),this.delay=e.frame+n;var i=e.actions;return i.push(this),i.sort(t.sortActions),!0},t.prototype.recycleAsyncId=function(e,t,r){void 0===r&&(r=0)},t.prototype._execute=function(t,r){if(!0===this.active)return e.prototype._execute.call(this,t,r)},t.sortActions=function(e,t){return e.delay===t.delay?e.index===t.index?0:e.index>t.index?1:-1:e.delay>t.delay?1:-1},t}(ce),ke=new U((function(e){return e.complete()}));function Be(e){return e?function(e){return new U((function(t){return e.schedule((function(){return t.complete()}))}))}(e):ke}function xe(e){return e&&l(e.schedule)}function Me(e){return e[e.length-1]}function Oe(e){return l(Me(e))?e.pop():void 0}function Ne(e){return xe(Me(e))?e.pop():void 0}function Le(e,t){return"number"==typeof Me(e)?e.pop():t}var De=function(e){return e&&"number"==typeof e.length&&"function"!=typeof e};function Ke(e){return l(null==e?void 0:e.then)}function Ue(e){return l(e[N])}function je(e){return Symbol.asyncIterator&&l(null==e?void 0:e[Symbol.asyncIterator])}function Ve(e){return new TypeError("You provided "+(null!==e&&"object"==typeof e?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}var Fe,qe="function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator";function He(e){return l(null==e?void 0:e[qe])}function ze(e){return f(this,arguments,(function(){var t,r,n;return o(this,(function(i){switch(i.label){case 0:t=e.getReader(),i.label=1;case 1:i.trys.push([1,,9,10]),i.label=2;case 2:return[4,u(t.read())];case 3:return r=i.sent(),n=r.value,r.done?[4,u(void 0)]:[3,5];case 4:return[2,i.sent()];case 5:return[4,u(n)];case 6:return[4,i.sent()];case 7:return i.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}}))}))}function $e(e){return l(null==e?void 0:e.getReader)}function Ge(e){if(e instanceof U)return e;if(null!=e){if(Ue(e))return i=e,new U((function(e){var t=i[N]();if(l(t.subscribe))return t.subscribe(e);throw new TypeError("Provided object does not correctly implement Symbol.observable")}));if(De(e))return n=e,new U((function(e){for(var t=0;t0&&l(i)}),void 0,void 0,(function(){(null==o?void 0:o.closed)||null==o||o.unsubscribe(),a=null}))),l(null!=n?"number"==typeof n?n:+n-c.now():i)}))}function gt(e){throw new pt(e)}function bt(e,t){return F((function(r,n){var i=0;r.subscribe(q(n,(function(r){n.next(e.call(t,r,i++))})))}))}var mt=Array.isArray;function vt(e){return bt((function(t){return function(e,t){return mt(t)?e.apply(void 0,c([],a(t))):e(t)}(e,t)}))}function wt(e,t,r,n){if(r){if(!xe(r))return function(){for(var i=[],o=0;o0){var e=void 0;try{e=Ge(n.shift())}catch(e){return void i()}var r=q(t,void 0,_,_);e.subscribe(r),r.add(i)}else t.complete()};i()}))}function nr(){for(var e=[],t=0;t=0?Ye(r,o,f,a,!0):i=!0,f();var l=q(r,(function(e){var t,r,i=n.slice();try{for(var o=s(i),a=o.next();!a.done;a=o.next()){var f=a.value,l=f.buffer;l.push(e),c<=l.length&&u(f)}}catch(e){t={error:e}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(t)throw t.error}}}),(function(){for(;null==n?void 0:n.length;)r.next(n.shift().buffer);null==l||l.unsubscribe(),r.complete(),r.unsubscribe()}),void 0,(function(){return n=null}));t.subscribe(l)}))}function mr(e,t){return F((function(r,n){var i=[];Ge(e).subscribe(q(n,(function(e){var r=[];i.push(r);var o=new y;o.add(Ge(t(e)).subscribe(q(n,(function(){p(i,r),n.next(r),o.unsubscribe()}),_)))}),_)),r.subscribe(q(n,(function(e){var t,r;try{for(var n=s(i),o=n.next();!o.done;o=n.next())o.value.push(e)}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}}),(function(){for(;i.length>0;)n.next(i.shift());n.complete()})))}))}function vr(e){return F((function(t,r){var n=null,i=null,o=function(){null==i||i.unsubscribe();var t=n;n=[],t&&r.next(t),Ge(e()).subscribe(i=q(r,o,_))};o(),t.subscribe(q(r,(function(e){return null==n?void 0:n.push(e)}),(function(){n&&r.next(n),r.complete()}),void 0,(function(){return n=i=null})))}))}function wr(e){return F((function(t,r){var n,i=null,o=!1;i=t.subscribe(q(r,void 0,void 0,(function(s){n=Ge(e(s,wr(e)(t))),i?(i.unsubscribe(),i=null,n.subscribe(r)):o=!0}))),o&&(i.unsubscribe(),i=null,n.subscribe(r))}))}function Er(e,t,r,n,i){return function(o,s){var a=r,c=t,u=0;o.subscribe(q(s,(function(t){var r=u++;c=a?e(c,t,r):(a=!0,t),n&&s.next(c)}),i&&function(){a&&s.next(c),s.complete()}))}}function _r(e,t){return F(Er(e,t,arguments.length>=2,!1,!0))}var Sr=function(e,t){return e.push(t),e};function Ar(){return F((function(e,t){_r(Sr,[])(e).subscribe(t)}))}function Tr(e,t){return D(Ar(),Mt((function(t){return e(t)})),t?vt(t):L)}function Ir(e){return Tr(Rt,e)}var Cr=Ir;function Pr(){for(var e=[],t=0;t=2;return function(n){return n.pipe(sr((function(t,r){return r===e})),jr(1),r?Ur(t):Xr((function(){return new ft})))}}function Zr(){for(var e=[],t=0;t=2;return function(n){return n.pipe(e?sr((function(t,r){return e(t,r,n)})):L,jr(1),r?Ur(t):Xr((function(){return new at})))}}function ln(e,t,r,n){return F((function(i,o){var s;t&&"function"!=typeof t?(r=t.duration,s=t.element,n=t.connector):s=t;var a=new Map,c=function(e){a.forEach(e),e(o)},u=function(e){return c((function(t){return t.error(e)}))},f=0,l=!1,h=new H(o,(function(t){try{var i=e(t),c=a.get(i);if(!c){a.set(i,c=n?n():new ee);var d=(y=i,g=c,(b=new U((function(e){f++;var t=g.subscribe(e);return function(){t.unsubscribe(),0==--f&&l&&h.unsubscribe()}}))).key=y,b);if(o.next(d),r){var p=q(c,(function(){c.complete(),null==p||p.unsubscribe()}),void 0,void 0,(function(){return a.delete(i)}));h.add(Ge(r(d)).subscribe(p))}}c.next(s?s(t):t)}catch(e){u(e)}var y,g,b}),(function(){return c((function(e){return e.complete()}))}),u,(function(){return a.clear()}),(function(){return l=!0,0===f}));i.subscribe(h)}))}function hn(){return F((function(e,t){e.subscribe(q(t,(function(){t.next(!1),t.complete()}),(function(){t.next(!0),t.complete()})))}))}function dn(e){return e<=0?function(){return ke}:F((function(t,r){var n=[];t.subscribe(q(r,(function(t){n.push(t),e=2;return function(n){return n.pipe(e?sr((function(t,r){return e(t,r,n)})):L,dn(1),r?Ur(t):Xr((function(){return new at})))}}function yn(){return F((function(e,t){e.subscribe(q(t,(function(e){t.next(it.createNext(e))}),(function(){t.next(it.createComplete()),t.complete()}),(function(e){t.next(it.createError(e)),t.complete()})))}))}function gn(e){return _r(l(e)?function(t,r){return e(t,r)>0?t:r}:function(e,t){return e>t?e:t})}var bn=Mt;function mn(e,t,r){return void 0===r&&(r=1/0),l(t)?Mt((function(){return e}),t,r):("number"==typeof t&&(r=t),Mt((function(){return e}),r))}function vn(e,t,r){return void 0===r&&(r=1/0),F((function(n,i){var o=t;return xt(n,i,(function(t,r){return e(o,t,r)}),r,(function(e){o=e}),!1,void 0,(function(){return o=null}))}))}function wn(){for(var e=[],t=0;t=2,!0))}function Kn(e,t){return void 0===t&&(t=function(e,t){return e===t}),F((function(r,n){var i={buffer:[],complete:!1},o={buffer:[],complete:!1},s=function(e){n.next(e),n.complete()},a=function(e,r){var i=q(n,(function(n){var i=r.buffer,o=r.complete;0===i.length?o?s(!1):e.buffer.push(n):!t(n,i.shift())&&s(!1)}),(function(){e.complete=!0;var t=r.complete,n=r.buffer;t&&s(0===n.length),null==i||i.unsubscribe()}));return i};r.subscribe(a(i,o)),e.subscribe(a(o,i))}))}function Un(e){void 0===e&&(e={});var t=e.connector,r=void 0===t?function(){return new ee}:t,n=e.resetOnError,i=void 0===n||n,o=e.resetOnComplete,s=void 0===o||o,a=e.resetOnRefCountZero,c=void 0===a||a;return function(e){var t=null,n=null,o=null,a=0,u=!1,f=!1,l=function(){null==n||n.unsubscribe(),n=null},h=function(){l(),t=o=null,u=f=!1},d=function(){var e=t;h(),null==e||e.unsubscribe()};return F((function(e,p){a++,f||u||l();var y=o=null!=o?o:r();p.add((function(){0!=--a||f||u||(n=jn(d,c))})),y.subscribe(p),t||(t=new B({next:function(e){return y.next(e)},error:function(e){f=!0,l(),n=jn(h,i,e),y.error(e)},complete:function(){u=!0,l(),n=jn(h,s),y.complete()}}),tt(e).subscribe(t))}))(e)}}function jn(e,t){for(var r=[],n=2;n0?t:e;return F((function(t,n){var i=[new ee],o=0;n.next(i[0].asObservable()),t.subscribe(q(n,(function(t){var a,c;try{for(var u=s(i),f=u.next();!f.done;f=u.next())f.value.next(t)}catch(e){a={error:e}}finally{try{f&&!f.done&&(c=u.return)&&c.call(u)}finally{if(a)throw a.error}}var l=o-e+1;if(l>=0&&l%r==0&&i.shift().complete(),++o%r==0){var h=new ee;i.push(h),n.next(h.asObservable())}}),(function(){for(;i.length>0;)i.shift().complete();n.complete()}),(function(e){for(;i.length>0;)i.shift().error(e);n.error(e)}),(function(){i=null})))}))}function fi(e){for(var t,r,n=[],i=1;i=0?Ye(r,o,u,s,!0):i=!0,u();var f=function(e){return n.slice().forEach(e)},l=function(e){f((function(t){var r=t.window;return e(r)})),e(r),r.unsubscribe()};return t.subscribe(q(r,(function(e){f((function(t){t.window.next(e),a<=++t.seen&&c(t)}))}),(function(){return l((function(e){return e.complete()}))}),(function(e){return l((function(t){return t.error(e)}))}))),function(){n=null}}))}function li(e,t){return F((function(r,n){var i=[],o=function(e){for(;0{var n=r(48764),i=n.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function s(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,t),t.Buffer=s),s.prototype=Object.create(i.prototype),o(i,s),s.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},s.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},s.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},s.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},50202:(e,t,r)=>{"use strict";var n=r(63700),i=/[\/\?<>\\:\*\|"]/g,o=/[\x00-\x1f\x80-\x9f]/g,s=/^\.+$/,a=/^(con|prn|aux|nul|com[0-9]|lpt[0-9])(\..*)?$/i,c=/[\. ]+$/;function u(e,t){if("string"!=typeof e)throw new Error("Input must be string");var r=e.replace(i,t).replace(o,t).replace(s,t).replace(a,t).replace(c,t);return n(r,255)}e.exports=function(e,t){var r=t&&t.replacement||"",n=u(e,r);return""===r?n:u(n,"")}},17221:(e,t,r)=>{e.exports=r(59119)(r(58573))},58573:(e,t,r)=>{const n=new(0,r(86266).ec)("secp256k1"),i=n.curve,o=i.n.constructor;function s(e){const t=e[0];switch(t){case 2:case 3:return 33!==e.length?null:function(e,t){let r=new o(t);if(r.cmp(i.p)>=0)return null;r=r.toRed(i.red);let s=r.redSqr().redIMul(r).redIAdd(i.b).redSqrt();return 3===e!==s.isOdd()&&(s=s.redNeg()),n.keyPair({pub:{x:r,y:s}})}(t,e.subarray(1,33));case 4:case 6:case 7:return 65!==e.length?null:function(e,t,r){let s=new o(t),a=new o(r);if(s.cmp(i.p)>=0||a.cmp(i.p)>=0)return null;if(s=s.toRed(i.red),a=a.toRed(i.red),(6===e||7===e)&&a.isOdd()!==(7===e))return null;const c=s.redSqr().redIMul(s);return a.redSqr().redISub(c.redIAdd(i.b)).isZero()?n.keyPair({pub:{x:s,y:a}}):null}(t,e.subarray(1,33),e.subarray(33,65));default:return null}}function a(e,t){const r=t.encode(null,33===e.length);for(let t=0;t0,privateKeyVerify(e){const t=new o(e);return t.cmp(i.n)<0&&!t.isZero()?0:1},privateKeyNegate(e){const t=new o(e),r=i.n.sub(t).umod(i.n).toArrayLike(Uint8Array,"be",32);return e.set(r),0},privateKeyTweakAdd(e,t){const r=new o(t);if(r.cmp(i.n)>=0)return 1;if(r.iadd(new o(e)),r.cmp(i.n)>=0&&r.isub(i.n),r.isZero())return 1;const n=r.toArrayLike(Uint8Array,"be",32);return e.set(n),0},privateKeyTweakMul(e,t){let r=new o(t);if(r.cmp(i.n)>=0||r.isZero())return 1;r.imul(new o(e)),r.cmp(i.n)>=0&&(r=r.umod(i.n));const n=r.toArrayLike(Uint8Array,"be",32);return e.set(n),0},publicKeyVerify:e=>null===s(e)?1:0,publicKeyCreate(e,t){const r=new o(t);return r.cmp(i.n)>=0||r.isZero()?1:(a(e,n.keyFromPrivate(t).getPublic()),0)},publicKeyConvert(e,t){const r=s(t);return null===r?1:(a(e,r.getPublic()),0)},publicKeyNegate(e,t){const r=s(t);if(null===r)return 1;const n=r.getPublic();return n.y=n.y.redNeg(),a(e,n),0},publicKeyCombine(e,t){const r=new Array(t.length);for(let e=0;e=0)return 2;const c=n.getPublic().add(i.g.mul(r));return c.isInfinity()?2:(a(e,c),0)},publicKeyTweakMul(e,t,r){const n=s(t);return null===n?1:(r=new o(r)).cmp(i.n)>=0||r.isZero()?2:(a(e,n.getPublic().mul(r)),0)},signatureNormalize(e){const t=new o(e.subarray(0,32)),r=new o(e.subarray(32,64));return t.cmp(i.n)>=0||r.cmp(i.n)>=0?1:(1===r.cmp(n.nh)&&e.set(i.n.sub(r).toArrayLike(Uint8Array,"be",32),32),0)},signatureExport(e,t){const r=t.subarray(0,32),n=t.subarray(32,64);if(new o(r).cmp(i.n)>=0)return 1;if(new o(n).cmp(i.n)>=0)return 1;const{output:s}=e;let a=s.subarray(4,37);a[0]=0,a.set(r,1);let c=33,u=0;for(;c>1&&0===a[u]&&!(128&a[u+1]);--c,++u);if(a=a.subarray(u),128&a[0])return 1;if(c>1&&0===a[0]&&!(128&a[1]))return 1;let f=s.subarray(39,72);f[0]=0,f.set(n,1);let l=33,h=0;for(;l>1&&0===f[h]&&!(128&f[h+1]);--l,++h);return f=f.subarray(h),128&f[0]||l>1&&0===f[0]&&!(128&f[1])?1:(e.outputlen=6+c+l,s[0]=48,s[1]=e.outputlen-2,s[2]=2,s[3]=a.length,s.set(a,4),s[4+c]=2,s[5+c]=f.length,s.set(f,6+c),0)},signatureImport(e,t){if(t.length<8)return 1;if(t.length>72)return 1;if(48!==t[0])return 1;if(t[1]!==t.length-2)return 1;if(2!==t[2])return 1;const r=t[3];if(0===r)return 1;if(5+r>=t.length)return 1;if(2!==t[4+r])return 1;const n=t[5+r];if(0===n)return 1;if(6+r+n!==t.length)return 1;if(128&t[4])return 1;if(r>1&&0===t[4]&&!(128&t[5]))return 1;if(128&t[r+6])return 1;if(n>1&&0===t[r+6]&&!(128&t[r+7]))return 1;let s=t.subarray(4,4+r);if(33===s.length&&0===s[0]&&(s=s.subarray(1)),s.length>32)return 1;let a=t.subarray(6+r);if(33===a.length&&0===a[0]&&(a=a.slice(1)),a.length>32)throw new Error("S length is too long");let c=new o(s);c.cmp(i.n)>=0&&(c=new o(0));let u=new o(t.subarray(6+r));return u.cmp(i.n)>=0&&(u=new o(0)),e.set(c.toArrayLike(Uint8Array,"be",32),0),e.set(u.toArrayLike(Uint8Array,"be",32),32),0},ecdsaSign(e,t,r,s,a){if(a){const e=a;a=n=>{const i=e(t,r,null,s,n);if(!(i instanceof Uint8Array&&32===i.length))throw new Error("This is the way");return new o(i)}}const c=new o(r);if(c.cmp(i.n)>=0||c.isZero())return 1;let u;try{u=n.sign(t,r,{canonical:!0,k:a,pers:s})}catch(e){return 1}return e.signature.set(u.r.toArrayLike(Uint8Array,"be",32),0),e.signature.set(u.s.toArrayLike(Uint8Array,"be",32),32),e.recid=u.recoveryParam,0},ecdsaVerify(e,t,r){const a={r:e.subarray(0,32),s:e.subarray(32,64)},c=new o(a.r),u=new o(a.s);if(c.cmp(i.n)>=0||u.cmp(i.n)>=0)return 1;if(1===u.cmp(n.nh)||c.isZero()||u.isZero())return 3;const f=s(r);if(null===f)return 2;const l=f.getPublic();return n.verify(t,a,l)?0:3},ecdsaRecover(e,t,r,s){const c={r:t.slice(0,32),s:t.slice(32,64)},u=new o(c.r),f=new o(c.s);if(u.cmp(i.n)>=0||f.cmp(i.n)>=0)return 1;if(u.isZero()||f.isZero())return 2;let l;try{l=n.recoverPubKey(s,c,r)}catch(e){return 2}return a(e,l),0},ecdh(e,t,r,a,c,u,f){const l=s(t);if(null===l)return 1;const h=new o(r);if(h.cmp(i.n)>=0||h.isZero())return 2;const d=l.getPublic().mul(h);if(void 0===c){const t=d.encode(null,!0),r=n.hash().update(t).digest();for(let t=0;t<32;++t)e[t]=r[t]}else{u||(u=new Uint8Array(32));const t=d.getX().toArray("be",32);for(let e=0;e<32;++e)u[e]=t[e];f||(f=new Uint8Array(32));const r=d.getY().toArray("be",32);for(let e=0;e<32;++e)f[e]=r[e];const n=c(u,f,a);if(!(n instanceof Uint8Array&&n.length===e.length))return 2;e.set(n)}return 0}}},59119:e=>{const t="Impossible case. Please create issue.",r="The tweak was out of range or the resulted private key is invalid",n="The tweak was out of range or equal to zero",i="Public Key could not be parsed",o="Public Key serialization error",s="Signature could not be parsed";function a(e,t){if(!e)throw new Error(t)}function c(e,t,r){if(a(t instanceof Uint8Array,`Expected ${e} to be an Uint8Array`),void 0!==r)if(Array.isArray(r)){const n=`Expected ${e} to be an Uint8Array with length [${r.join(", ")}]`;a(r.includes(t.length),n)}else{const n=`Expected ${e} to be an Uint8Array with length ${r}`;a(t.length===r,n)}}function u(e){a("Boolean"===l(e),"Expected compressed to be a Boolean")}function f(e=(e=>new Uint8Array(e)),t){return"function"==typeof e&&(e=e(t)),c("output",e,t),e}function l(e){return Object.prototype.toString.call(e).slice(8,-1)}e.exports=e=>({contextRandomize(t){if(a(null===t||t instanceof Uint8Array,"Expected seed to be an Uint8Array or null"),null!==t&&c("seed",t,32),1===e.contextRandomize(t))throw new Error("Unknow error on context randomization")},privateKeyVerify:t=>(c("private key",t,32),0===e.privateKeyVerify(t)),privateKeyNegate(r){switch(c("private key",r,32),e.privateKeyNegate(r)){case 0:return r;case 1:throw new Error(t)}},privateKeyTweakAdd(t,n){switch(c("private key",t,32),c("tweak",n,32),e.privateKeyTweakAdd(t,n)){case 0:return t;case 1:throw new Error(r)}},privateKeyTweakMul(t,r){switch(c("private key",t,32),c("tweak",r,32),e.privateKeyTweakMul(t,r)){case 0:return t;case 1:throw new Error(n)}},publicKeyVerify:t=>(c("public key",t,[33,65]),0===e.publicKeyVerify(t)),publicKeyCreate(t,r=!0,n){switch(c("private key",t,32),u(r),n=f(n,r?33:65),e.publicKeyCreate(n,t)){case 0:return n;case 1:throw new Error("Private Key is invalid");case 2:throw new Error(o)}},publicKeyConvert(t,r=!0,n){switch(c("public key",t,[33,65]),u(r),n=f(n,r?33:65),e.publicKeyConvert(n,t)){case 0:return n;case 1:throw new Error(i);case 2:throw new Error(o)}},publicKeyNegate(r,n=!0,s){switch(c("public key",r,[33,65]),u(n),s=f(s,n?33:65),e.publicKeyNegate(s,r)){case 0:return s;case 1:throw new Error(i);case 2:throw new Error(t);case 3:throw new Error(o)}},publicKeyCombine(t,r=!0,n){a(Array.isArray(t),"Expected public keys to be an Array"),a(t.length>0,"Expected public keys array will have more than zero items");for(const e of t)c("public key",e,[33,65]);switch(u(r),n=f(n,r?33:65),e.publicKeyCombine(n,t)){case 0:return n;case 1:throw new Error(i);case 2:throw new Error("The sum of the public keys is not valid");case 3:throw new Error(o)}},publicKeyTweakAdd(t,n,o=!0,s){switch(c("public key",t,[33,65]),c("tweak",n,32),u(o),s=f(s,o?33:65),e.publicKeyTweakAdd(s,t,n)){case 0:return s;case 1:throw new Error(i);case 2:throw new Error(r)}},publicKeyTweakMul(t,r,o=!0,s){switch(c("public key",t,[33,65]),c("tweak",r,32),u(o),s=f(s,o?33:65),e.publicKeyTweakMul(s,t,r)){case 0:return s;case 1:throw new Error(i);case 2:throw new Error(n)}},signatureNormalize(t){switch(c("signature",t,64),e.signatureNormalize(t)){case 0:return t;case 1:throw new Error(s)}},signatureExport(r,n){c("signature",r,64);const i={output:n=f(n,72),outputlen:72};switch(e.signatureExport(i,r)){case 0:return n.slice(0,i.outputlen);case 1:throw new Error(s);case 2:throw new Error(t)}},signatureImport(r,n){switch(c("signature",r),n=f(n,64),e.signatureImport(n,r)){case 0:return n;case 1:throw new Error(s);case 2:throw new Error(t)}},ecdsaSign(r,n,i={},o){c("message",r,32),c("private key",n,32),a("Object"===l(i),"Expected options to be an Object"),void 0!==i.data&&c("options.data",i.data),void 0!==i.noncefn&&a("Function"===l(i.noncefn),"Expected options.noncefn to be a Function");const s={signature:o=f(o,64),recid:null};switch(e.ecdsaSign(s,r,n,i.data,i.noncefn)){case 0:return s;case 1:throw new Error("The nonce generation function failed, or the private key was invalid");case 2:throw new Error(t)}},ecdsaVerify(t,r,n){switch(c("signature",t,64),c("message",r,32),c("public key",n,[33,65]),e.ecdsaVerify(t,r,n)){case 0:return!0;case 3:return!1;case 1:throw new Error(s);case 2:throw new Error(i)}},ecdsaRecover(r,n,i,o=!0,h){switch(c("signature",r,64),a("Number"===l(n)&&n>=0&&n<=3,"Expected recovery id to be a Number within interval [0, 3]"),c("message",i,32),u(o),h=f(h,o?33:65),e.ecdsaRecover(h,r,n,i)){case 0:return h;case 1:throw new Error(s);case 2:throw new Error("Public key could not be recover");case 3:throw new Error(t)}},ecdh(t,r,n={},o){switch(c("public key",t,[33,65]),c("private key",r,32),a("Object"===l(n),"Expected options to be an Object"),void 0!==n.data&&c("options.data",n.data),void 0!==n.hashfn?(a("Function"===l(n.hashfn),"Expected options.hashfn to be a Function"),void 0!==n.xbuf&&c("options.xbuf",n.xbuf,32),void 0!==n.ybuf&&c("options.ybuf",n.ybuf,32),c("output",o)):o=f(o,32),e.ecdh(o,t,r,n.data,n.hashfn,n.xbuf,n.ybuf)){case 0:return o;case 1:throw new Error(i);case 2:throw new Error("Scalar was invalid (zero or overflow)")}}})},27695:e=>{"use strict";const t=new Map;e.exports={setDelayedInterval:function(e,r,n){n=n||r;const i=`${Date.now()}:${Math.floor(1e6*Math.random())}`,o=setTimeout((()=>{!async function(e,r,n){for(;t.get(n);){try{await e()}catch(e){setTimeout((()=>{throw e}),1);break}if(!t.get(n))break;await new Promise((e=>{const i=setTimeout(e,r);t.set(n,i)}))}}(e,r,i)}),n);return t.set(i,o),i},clearDelayedInterval:function(e){const r=t.get(e);r&&(clearTimeout(r),t.delete(e))}}},8975:(e,t,r)=>{var n;!function(){"use strict";var i={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function o(e){return a(u(e),arguments)}function s(e,t){return o.apply(null,[e].concat(t||[]))}function a(e,t){var r,n,s,a,c,u,f,l,h,d=1,p=e.length,y="";for(n=0;n=0),a.type){case"b":r=parseInt(r,10).toString(2);break;case"c":r=String.fromCharCode(parseInt(r,10));break;case"d":case"i":r=parseInt(r,10);break;case"j":r=JSON.stringify(r,null,a.width?parseInt(a.width):0);break;case"e":r=a.precision?parseFloat(r).toExponential(a.precision):parseFloat(r).toExponential();break;case"f":r=a.precision?parseFloat(r).toFixed(a.precision):parseFloat(r);break;case"g":r=a.precision?String(Number(r.toPrecision(a.precision))):parseFloat(r);break;case"o":r=(parseInt(r,10)>>>0).toString(8);break;case"s":r=String(r),r=a.precision?r.substring(0,a.precision):r;break;case"t":r=String(!!r),r=a.precision?r.substring(0,a.precision):r;break;case"T":r=Object.prototype.toString.call(r).slice(8,-1).toLowerCase(),r=a.precision?r.substring(0,a.precision):r;break;case"u":r=parseInt(r,10)>>>0;break;case"v":r=r.valueOf(),r=a.precision?r.substring(0,a.precision):r;break;case"x":r=(parseInt(r,10)>>>0).toString(16);break;case"X":r=(parseInt(r,10)>>>0).toString(16).toUpperCase()}i.json.test(a.type)?y+=r:(!i.number.test(a.type)||l&&!a.sign?h="":(h=l?"+":"-",r=r.toString().replace(i.sign,"")),u=a.pad_char?"0"===a.pad_char?"0":a.pad_char.charAt(1):" ",f=a.width-(h+r).length,c=a.width&&f>0?u.repeat(f):"",y+=a.align?h+r+c:"0"===u?h+c+r:c+h+r)}return y}var c=Object.create(null);function u(e){if(c[e])return c[e];for(var t,r=e,n=[],o=0;r;){if(null!==(t=i.text.exec(r)))n.push(t[0]);else if(null!==(t=i.modulo.exec(r)))n.push("%");else{if(null===(t=i.placeholder.exec(r)))throw new SyntaxError("[sprintf] unexpected placeholder");if(t[2]){o|=1;var s=[],a=t[2],u=[];if(null===(u=i.key.exec(a)))throw new SyntaxError("[sprintf] failed to parse named argument key");for(s.push(u[1]);""!==(a=a.substring(u[0].length));)if(null!==(u=i.key_access.exec(a)))s.push(u[1]);else{if(null===(u=i.index_access.exec(a)))throw new SyntaxError("[sprintf] failed to parse named argument key");s.push(u[1])}t[2]=s}else o|=2;if(3===o)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");n.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return c[e]=n}t.sprintf=o,t.vsprintf=s,"undefined"!=typeof window&&(window.sprintf=o,window.vsprintf=s,void 0===(n=function(){return{sprintf:o,vsprintf:s}}.call(t,r,t,e))||(e.exports=n))}()},38386:function(e,t,r){var n=r(34155);!function(e){"use strict";function t(e,r){return void 0===r?r=>t(e,r):r[Symbol.asyncIterator]?async function*(e,t){let r=[];for await(const n of t)r.push(n),r.length===e&&(yield r,r=[]);r.length>0&&(yield r)}(e,r):function*(e,t){let r=[];for(const n of t)r.push(n),r.length===e&&(yield r,r=[]);r.length>0&&(yield r)}(e,r)}const r=Symbol("TIMEOUT");async function*i(e,t,n){const i=n[Symbol.asyncIterator]();let o,s,a,c=[];const u=()=>{f(),[s,a]=(e=>{let t;return[new Promise((n=>{t=setTimeout((()=>n(r)),e)})),()=>{clearTimeout(t)}]})(t)},f=()=>{a&&a(),s=void 0};for(o=i.next();;){const t=await(s?Promise.race([o,s]):o);if(t===r||t.done){if(c.length&&(yield c,c=[]),f(),t!==r)break}else o=i.next(),c.push(t.value),1===c.length&&u(),c.length!==e||(yield c,c=[],f())}}function o(e){if("function"==typeof e.next)return e;if("function"==typeof e[Symbol.iterator])return e[Symbol.iterator]();if("function"==typeof e[Symbol.asyncIterator])return e[Symbol.asyncIterator]();throw new TypeError('"values" does not to conform to any of the iterator or iterable protocols')}function s(){let e,t;return{promise:new Promise(((r,n)=>{t=r,e=n})),reject:e,resolve:t}}function a(e,t){const r=o(t),n=[],i=[];let a=!1,c=!1;async function u(){if(!c&&!(a||n.length>=e)){a=!0;try{const{done:e,value:t}=await r.next();e?c=!0:n.push({value:t})}catch(e){c=!0,n.push({error:e})}(function(){for(;i.length>0&&n.length>0;){const e=i.shift(),{error:t,value:r}=n.shift();t?e.reject(t):e.resolve({done:!1,value:r})}for(;i.length>0&&c;){const{resolve:e}=i.shift();e({done:!0,value:void 0})}})(),a=!1,u()}}const f={next:async function(){if(n.length>0){const{error:e,value:t}=n.shift();if(e)throw e;return u(),{done:!1,value:t}}if(c)return{done:!0,value:void 0};const e=s();return i.push(e),u(),e.promise},[Symbol.asyncIterator]:()=>f};return f}function c(e,t){return void 0===t?t=>c(e,t):0===e?t:t[Symbol.asyncIterator]?a(e,t):function*(e,t){const r=[];let n;try{for(const n of t)r.push(n),r.length<=e||(yield r.shift())}catch(e){n=e}for(const e of r)yield e;if(n)throw n}(e,t)}async function*u(e,t){for await(const r of t)await e(r)&&(yield r)}function f(e,t){return void 0===t?t=>u(e,t):u(e,t)}async function*l(e){for await(const t of e)t&&"string"!=typeof t&&(t[Symbol.iterator]||t[Symbol.asyncIterator])?yield*l(t):yield t}async function*h(e,t){for await(const r of t)yield await e(r)}function d(e,t){return void 0===t?t=>h(e,t):h(e,t)}function p(e,t,r){const n=o(r),i=[],a=[];let c=!1,u=!1,f=0,l=null;function h(){for(;a.length>0&&i.length>0;){const{resolve:e}=a.shift();e({done:!1,value:i.shift()})}for(;a.length>0&&0===f&&c;){const{resolve:e,reject:t}=a.shift();l?(t(l),l=null):e({done:!0,value:void 0})}}async function d(){if(c)h();else if(!(u||f+i.length>=e)){u=!0,f++;try{const{done:e,value:r}=await n.next();e?(c=!0,f--,h()):async function(e){try{const r=await t(e);if(r&&r[Symbol.asyncIterator])for await(const e of r)i.push(e);else i.push(r)}catch(e){c=!0,l=e}f--,h(),d()}(r)}catch(e){c=!0,f--,l=e,h()}u=!1,d()}}const p={next:async function(){if(0===i.length){const e=s();return a.push(e),d(),e.promise}const e=i.shift();return d(),{done:!1,value:e}},[Symbol.asyncIterator]:()=>p};return p}async function y(e){return new Promise((t=>{e.once("readable",(()=>{t()}))}))}function g(e,...t){let r=e();for(const e of t)r=e(r);return r}function b(e,t,r){return void 0===t?(t,r)=>b(e,t,r):void 0===r?r=>b(e,t,r):1===e?d(t,r):async function*(e,t,r){let n=null;const i=o(g((()=>r),c(1),(async function*(e){for await(const t of e){if(n)return;yield t}}),d((e=>({value:t(e)}))),c(e-1)));for(;;){const{value:e,done:t}=await i.next();if(t)break;try{const t=await e.value;n||(yield t)}catch(e){n=e}}if(n)throw n}(e,t,r)}async function m(e,t,r){let n=t;for await(const t of r)n=await e(n,t);return n}async function*v(e,t){for await(const r of t)await e(r),yield r}const w=e=>new Promise((t=>setTimeout(t,e)));function E(e,t,r){if(!Number.isFinite(e))throw new TypeError("Expected `limit` to be a finite number");if(e<=0)throw new TypeError("Expected `limit` to be greater than 0");if(!Number.isFinite(t))throw new TypeError("Expected `interval` to be a finite number");return async function*(){let n,i=0;for await(const o of r){if(i0&&await w(s),n=Date.now(),i=1,yield o}}()}function _(e,t){let r=e[0]+t[0],n=e[1]+t[1];if(n>=1e9){const e=n%1e9;r+=(n-e)/1e9,n=e}return[r,n]}function S(e,t,r){const n=o(r),i=[],a=[];let c=!1,u=!1,f=0,l=null;function h(){for(;a.length>0&&i.length>0;){const{resolve:e}=a.shift();e({done:!1,value:i.shift()})}for(;a.length>0&&0===f&&c;){const{resolve:e,reject:t}=a.shift();l?(t(l),l=null):e({done:!0,value:void 0})}}async function d(){if(c)h();else if(!(u||f+i.length>=e)){u=!0,f++;try{const{done:e,value:r}=await n.next();e?(c=!0,f--,h()):async function(e){try{const r=await t(e);i.push(r)}catch(e){c=!0,l=e}f--,h(),d()}(r)}catch(e){c=!0,f--,l=e,h()}u=!1,d()}}const p={next:async function(){if(0===i.length){const e=s();return a.push(e),d(),e.promise}const e=i.shift();return d(),{done:!1,value:e}},[Symbol.asyncIterator]:()=>p};return p}async function A(e,t){let r=null,n=null,i=null;const o=e=>{r=e,n&&n(e)},s=()=>{i&&i()};e.once("error",o);for await(const o of t)if(!1===e.write(o)&&await new Promise(((t,o)=>{if(r)return o(r);e.once("drain",s),i=t,n=o})),r)break;if(e.removeListener("error",o),e.removeListener("drain",s),r)throw r}e.batch=t,e.batchWithTimeout=function e(r,n,o){return void 0===o?t=>e(r,n,t):o[Symbol.asyncIterator]&&n!==1/0?i(r,n,o):t(r,o)},e.buffer=c,e.collect=function(e){return e[Symbol.asyncIterator]?async function(e){const t=[];for await(const r of e)t.push(r);return t}(e):Array.from(e)},e.concat=function(...e){return e.find((e=>void 0!==e[Symbol.asyncIterator]))?async function*(e){for await(const t of e)yield*t}(e):function*(e){for(const t of e)yield*t}(e)},e.consume=function(e){if(e[Symbol.asyncIterator])return async function(e){for await(const t of e);}(e);for(const t of e);},e.filter=f,e.flatMap=function e(t,r){return void 0===r?r=>e(t,r):f((e=>null!=e),l(d(t,r)))},e.flatTransform=function e(t,r,n){return void 0===r?(r,n)=>n?e(t,r,n):e(t,r):void 0===n?n=>e(t,r,n):f((e=>null!=e),l(p(t,r,n)))},e.flatten=l,e.fromStream=function(e){return"function"==typeof e[Symbol.asyncIterator]?e:async function*(e){for(;;){const t=e.read();if(null===t){if(e._readableState.ended)break;await y(e)}else yield t}}(e)},e.getIterator=o,e.map=d,e.merge=async function*(...e){const t=new Set(e.map(o));for(;t.size>0;)for(const e of t){const r=await e.next();r.done?t.delete(e):yield r.value}},e.parallelFlatMap=function e(t,r,n){return void 0===r?(r,n)=>n?e(t,r,n):e(t,r):void 0===n?n=>e(t,r,n):f((e=>null!=e),l(b(t,r,n)))},e.parallelMap=b,e.parallelMerge=async function*(...e){const t=e.map(o),r=new Set,n=new Map;let i=null,s=null,a=null;const c=e=>{i=e,s&&s(e)},u=e=>{a&&a(e)},f=e=>{const t=Promise.resolve(e.next()).then((async({done:i,value:o})=>{i||n.set(e,o),r.delete(t)}));r.add(t),t.then(u,c)};for(const e of t)f(e);for(;;){if(0===r.size&&0===n.size)return;await new Promise(((e,t)=>{if(i&&t(i),n.size>0)return e();a=e,s=t}));for(const[e,t]of n)n.delete(e),yield t,f(e)}},e.pipeline=g,e.reduce=function e(t,r,n){return void 0===r?(r,n)=>n?m(t,r,n):e(t,r):void 0===n?n=>e(t,r,n):m(t,r,n)},e.take=function e(t,r){return void 0===r?r=>e(t,r):r[Symbol.asyncIterator]?async function*(e,t){let r=0;for await(const n of t)if(yield await n,r++,r>=e)break}(t,r):function*(e,t){let r=0;for(const n of t)if(yield n,r++,r>=e)break}(t,r)},e.tap=function(e,t){return void 0===t?t=>v(e,t):v(e,t)},e.throttle=function(e,t,r){return void 0===r?r=>E(e,t,r):E(e,t,r)},e.time=function e(t={},r){return void 0===r?r=>e(t,r):void 0!==r[Symbol.asyncIterator]?async function*(e,t){const r=t[Symbol.asyncIterator]();let i=[0,0];for(;;){const t=n.hrtime(),{value:o,done:s}=await r.next(),a=n.hrtime(t);if(i=_(i,a),e.progress&&e.progress(a,i),s)return e.total&&e.total(i),o;yield o}}(t,r):function*(e,t){const r=t[Symbol.iterator]();let i=[0,0];for(;;){const t=n.hrtime(),{value:o,done:s}=r.next(),a=n.hrtime(t);if(i=_(i,a),e.progress&&e.progress(a,i),s)return e.total&&e.total(i),o;yield o}}(t,r)},e.transform=function e(t,r,n){return void 0===r?(r,n)=>n?e(t,r,n):e(t,r):void 0===n?n=>e(t,r,n):S(t,r,n)},e.writeToStream=function(e,t){return void 0===t?t=>A(e,t):A(e,t)},Object.defineProperty(e,"__esModule",{value:!0})}(t)},98548:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>b});var n=r(93379),i=r.n(n),o=r(7795),s=r.n(o),a=r(90569),c=r.n(a),u=r(3565),f=r.n(u),l=r(19216),h=r.n(l),d=r(44589),p=r.n(d),y=r(51424),g={};g.styleTagTransform=p(),g.setAttributes=f(),g.insert=c().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=h(),i()(y.Z,g);const b=y.Z&&y.Z.locals?y.Z.locals:void 0},93379:e=>{"use strict";var t=[];function r(e){for(var r=-1,n=0;n{"use strict";var t={};e.exports=function(e,r){var n=function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(r)}},19216:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,r)=>{"use strict";e.exports=function(e){var t=r.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){var t=e.insertStyleElement(e);return{update:function(r){!function(e,t,r){var n="";r.supports&&(n+="@supports (".concat(r.supports,") {")),r.media&&(n+="@media ".concat(r.media," {"));var i=void 0!==r.layer;i&&(n+="@layer".concat(r.layer.length>0?" ".concat(r.layer):""," {")),n+=r.css,i&&(n+="}"),r.media&&(n+="}"),r.supports&&(n+="}");var o=r.sourceMap;o&&"undefined"!=typeof btoa&&(n+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),t.styleTagTransform(n,e,t.options)}(t,e,r)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},44589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},22467:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.serialize=t.deserialize=t.registerSerializer=void 0;const n=r(37381);let i=n.DefaultSerializer;t.registerSerializer=function(e){i=n.extendSerializer(i,e)},t.deserialize=function(e){return i.deserialize(e)},t.serialize=function(e){return i.serialize(e)}},43734:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.Transfer=t.DefaultSerializer=t.expose=t.registerSerializer=void 0;var o=r(22467);Object.defineProperty(t,"registerSerializer",{enumerable:!0,get:function(){return o.registerSerializer}}),i(r(75063),t);var s=r(11934);Object.defineProperty(t,"expose",{enumerable:!0,get:function(){return s.expose}});var a=r(37381);Object.defineProperty(t,"DefaultSerializer",{enumerable:!0,get:function(){return a.DefaultSerializer}});var c=r(88180);Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return c.Transfer}})},14211:(e,t)=>{"use strict";let r;function n(e){return(""+e).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\/\/.+)?\/[^/]+(?:\?.*)?$/,"$1")+"/"}Object.defineProperty(t,"__esModule",{value:!0}),t.getBundleURL=t.getBaseURL=void 0,t.getBundleURL=function(){return r||(r=function(){try{throw new Error}catch(e){const t=(""+e.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\/\/[^)\n]+/g);if(t)return n(t[0])}return"/"}()),r},t.getBaseURL=n},58390:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isWorkerRuntime=t.getWorkerImplementation=t.defaultPoolSize=void 0;const n=r(14211);t.defaultPoolSize="undefined"!=typeof navigator&&navigator.hardwareConcurrency?navigator.hardwareConcurrency:4;const i=e=>/^[a-zA-Z][a-zA-Z\d+\-.]*:/.test(e);function o(e){const t=new Blob([e],{type:"application/javascript"});return URL.createObjectURL(t)}let s;t.getWorkerImplementation=function(){return s||(s=function(){if("undefined"==typeof Worker)return class{constructor(){throw Error("No web worker implementation available. You might have tried to spawn a worker within a worker in a browser that doesn't support workers in workers.")}};class e extends Worker{constructor(e,t){var r,s;"string"==typeof e&&t&&t._baseURL?e=new URL(e,t._baseURL):"string"==typeof e&&!i(e)&&n.getBundleURL().match(/^file:\/\//i)&&(e=new URL(e,n.getBundleURL().replace(/\/[^\/]+$/,"/")),(null===(r=null==t?void 0:t.CORSWorkaround)||void 0===r||r)&&(e=o(`importScripts(${JSON.stringify(e)});`))),"string"==typeof e&&i(e)&&(null===(s=null==t?void 0:t.CORSWorkaround)||void 0===s||s)&&(e=o(`importScripts(${JSON.stringify(e)});`)),super(e,t)}}class t extends e{constructor(e,t){super(window.URL.createObjectURL(e),t)}static fromText(e,r){const n=new window.Blob([e],{type:"text/javascript"});return new t(n,r)}}return{blob:t,default:e}}()),s},t.isWorkerRuntime=function(){const e="undefined"!=typeof self&&"undefined"!=typeof Window&&self instanceof Window;return!("undefined"==typeof self||!self.postMessage||e)}},75063:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Worker=t.BlobWorker=t.isWorkerRuntime=t.Thread=t.spawn=t.Pool=void 0;const n=r(58390);Object.defineProperty(t,"isWorkerRuntime",{enumerable:!0,get:function(){return n.isWorkerRuntime}});var i=r(99337);Object.defineProperty(t,"Pool",{enumerable:!0,get:function(){return i.Pool}});var o=r(61264);Object.defineProperty(t,"spawn",{enumerable:!0,get:function(){return o.spawn}});var s=r(54235);Object.defineProperty(t,"Thread",{enumerable:!0,get:function(){return s.Thread}}),t.BlobWorker=n.getWorkerImplementation().blob,t.Worker=n.getWorkerImplementation().default},56891:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.createProxyModule=t.createProxyFunction=void 0;const i=n(r(11227)),o=r(35049),s=r(22467),a=r(62015),c=r(88180),u=r(43229),f=i.default("threads:master:messages");let l=1;function h(e,t){return(...r)=>{const n=l++,{args:i,transferables:h}=function(e){if(0===e.length)return{args:[],transferables:[]};const t=[],r=[];for(const n of e)c.isTransferDescriptor(n)?(t.push(s.serialize(n.send)),r.push(...n.transferables)):t.push(s.serialize(n));return{args:t,transferables:0===r.length?r:(n=r,Array.from(new Set(n)))};var n}(r),d={type:u.MasterMessageType.run,uid:n,method:t,args:i};f("Sending command to run function to worker:",d);try{e.postMessage(d,h)}catch(e){return a.ObservablePromise.from(Promise.reject(e))}return a.ObservablePromise.from(o.multicast(function(e,t){return new o.Observable((r=>{let n;const i=o=>{var a;if(f("Message from worker:",o.data),o.data&&o.data.uid===t)if((a=o.data)&&a.type===u.WorkerMessageType.running)n=o.data.resultType;else if((e=>e&&e.type===u.WorkerMessageType.result)(o.data))"promise"===n?(void 0!==o.data.payload&&r.next(s.deserialize(o.data.payload)),r.complete(),e.removeEventListener("message",i)):(o.data.payload&&r.next(s.deserialize(o.data.payload)),o.data.complete&&(r.complete(),e.removeEventListener("message",i)));else if((e=>e&&e.type===u.WorkerMessageType.error)(o.data)){const t=s.deserialize(o.data.error);r.error(t),e.removeEventListener("message",i)}};return e.addEventListener("message",i),()=>{if("observable"===n||!n){const r={type:u.MasterMessageType.cancel,uid:t};e.postMessage(r)}e.removeEventListener("message",i)}}))}(e,n)))}}t.createProxyFunction=h,t.createProxyModule=function(e,t){const r={};for(const n of t)r[n]=h(e,n);return r}},26774:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.PoolEventType=void 0,(r=t.PoolEventType||(t.PoolEventType={})).initialized="initialized",r.taskCanceled="taskCanceled",r.taskCompleted="taskCompleted",r.taskFailed="taskFailed",r.taskQueued="taskQueued",r.taskQueueDrained="taskQueueDrained",r.taskStart="taskStart",r.terminated="terminated"},99337:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Pool=t.Thread=t.PoolEventType=void 0;const o=i(r(11227)),s=r(35049),a=r(90531),c=r(58390),u=r(26774);Object.defineProperty(t,"PoolEventType",{enumerable:!0,get:function(){return u.PoolEventType}});const f=r(54235);Object.defineProperty(t,"Thread",{enumerable:!0,get:function(){return f.Thread}});let l=1;class h{constructor(e,t){this.eventSubject=new s.Subject,this.initErrors=[],this.isClosing=!1,this.nextTaskID=1,this.taskQueue=[];const r="number"==typeof t?{size:t}:t||{},{size:n=c.defaultPoolSize}=r;var i;this.debug=o.default(`threads:pool:${i=r.name||String(l++),i.replace(/\W/g," ").trim().replace(/\s+/g,"-")}`),this.options=r,this.workers=function(e,t){return function(e){const t=[];for(let r=0;r({init:e(),runningTasks:[]})))}(e,n),this.eventObservable=s.multicast(s.Observable.from(this.eventSubject)),Promise.all(this.workers.map((e=>e.init))).then((()=>this.eventSubject.next({type:u.PoolEventType.initialized,size:this.workers.length})),(e=>{this.debug("Error while initializing pool worker:",e),this.eventSubject.error(e),this.initErrors.push(e)}))}findIdlingWorker(){const{concurrency:e=1}=this.options;return this.workers.find((t=>t.runningTasks.lengthn(this,void 0,void 0,(function*(){yield(0,new Promise((e=>setTimeout(e,0))));try{yield this.runPoolTask(e,t)}finally{e.runningTasks=e.runningTasks.filter((e=>e!==r)),this.isClosing||this.scheduleWork()}})))();e.runningTasks.push(r)}))}scheduleWork(){this.debug("Attempt de-queueing a task in order to run it...");const e=this.findIdlingWorker();if(!e)return;const t=this.taskQueue.shift();if(!t)return this.debug("Task queue is empty"),void this.eventSubject.next({type:u.PoolEventType.taskQueueDrained});this.run(e,t)}taskCompletion(e){return new Promise(((t,r)=>{const n=this.events().subscribe((i=>{i.type===u.PoolEventType.taskCompleted&&i.taskID===e?(n.unsubscribe(),t(i.returnValue)):i.type===u.PoolEventType.taskFailed&&i.taskID===e?(n.unsubscribe(),r(i.error)):i.type===u.PoolEventType.terminated&&(n.unsubscribe(),r(Error("Pool has been terminated before task was run.")))}))}))}settled(e=!1){return n(this,void 0,void 0,(function*(){const t=()=>{return e=this.workers,t=e=>e.runningTasks,e.reduce(((e,r)=>[...e,...t(r)]),[]);var e,t},r=[],n=this.eventObservable.subscribe((e=>{e.type===u.PoolEventType.taskFailed&&r.push(e.error)}));return this.initErrors.length>0?Promise.reject(this.initErrors[0]):e&&0===this.taskQueue.length?(yield a.allSettled(t()),r):(yield new Promise(((e,t)=>{const r=this.eventObservable.subscribe({next(t){t.type===u.PoolEventType.taskQueueDrained&&(r.unsubscribe(),e(void 0))},error:t})})),yield a.allSettled(t()),n.unsubscribe(),r)}))}completed(e=!1){return n(this,void 0,void 0,(function*(){const t=this.settled(e),r=new Promise(((e,r)=>{const n=this.eventObservable.subscribe({next(i){i.type===u.PoolEventType.taskQueueDrained?(n.unsubscribe(),e(t)):i.type===u.PoolEventType.taskFailed&&(n.unsubscribe(),r(i.error))},error:r})})),n=yield Promise.race([t,r]);if(n.length>0)throw n[0]}))}events(){return this.eventObservable}queue(e){const{maxQueuedJobs:t=1/0}=this.options;if(this.isClosing)throw Error("Cannot schedule pool tasks after terminate() has been called.");if(this.initErrors.length>0)throw this.initErrors[0];const r=this.nextTaskID++,n=this.taskCompletion(r);n.catch((e=>{this.debug(`Task #${r} errored:`,e)}));const i={id:r,run:e,cancel:()=>{-1!==this.taskQueue.indexOf(i)&&(this.taskQueue=this.taskQueue.filter((e=>e!==i)),this.eventSubject.next({type:u.PoolEventType.taskCanceled,taskID:i.id}))},then:n.then.bind(n)};if(this.taskQueue.length>=t)throw Error("Maximum number of pool tasks queued. Refusing to queue another one.\nThis usually happens for one of two reasons: We are either at peak workload right now or some tasks just won't finish, thus blocking the pool.");return this.debug(`Queueing task #${i.id}...`),this.taskQueue.push(i),this.eventSubject.next({type:u.PoolEventType.taskQueued,taskID:i.id}),this.scheduleWork(),i}terminate(e){return n(this,void 0,void 0,(function*(){this.isClosing=!0,e||(yield this.completed(!0)),this.eventSubject.next({type:u.PoolEventType.terminated,remainingQueue:[...this.taskQueue]}),this.eventSubject.complete(),yield Promise.all(this.workers.map((e=>n(this,void 0,void 0,(function*(){return f.Thread.terminate(yield e.init)})))))}))}}function d(e,t){return new h(e,t)}h.EventType=u.PoolEventType,d.EventType=u.PoolEventType,t.Pool=d},61264:function(e,t,r){"use strict";var n=r(34155),i=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.spawn=void 0;const s=o(r(11227)),a=r(35049),c=r(22467),u=r(53104),f=r(8258),l=r(56356),h=r(56891),d=s.default("threads:master:messages"),p=s.default("threads:master:spawn"),y=s.default("threads:master:thread-utils"),g=void 0!==n&&n.env.THREADS_WORKER_INIT_TIMEOUT?Number.parseInt(n.env.THREADS_WORKER_INIT_TIMEOUT,10):1e4;function b(e,t,r,n){const i=r.filter((e=>e.type===l.WorkerEventType.internalError)).map((e=>e.error));return Object.assign(e,{[f.$errors]:i,[f.$events]:r,[f.$terminate]:n,[f.$worker]:t})}t.spawn=function(e,t){return i(this,void 0,void 0,(function*(){p("Initializing new thread");const r=t&&t.timeout?t.timeout:g,n=yield function(e,t,r){return i(this,void 0,void 0,(function*(){let n;const i=new Promise(((e,i)=>{n=setTimeout((()=>i(Error(r))),t)})),o=yield Promise.race([e,i]);return clearTimeout(n),o}))}(function(e){return new Promise(((t,r)=>{const n=i=>{var o;d("Message from worker before finishing initialization:",i.data),(o=i.data)&&"init"===o.type?(e.removeEventListener("message",n),t(i.data)):(e=>e&&"uncaughtError"===e.type)(i.data)&&(e.removeEventListener("message",n),r(c.deserialize(i.data.error)))};e.addEventListener("message",n)}))}(e),r,`Timeout: Did not receive an init message from worker after ${r}ms. Make sure the worker calls expose().`),o=n.exposed,{termination:s,terminate:f}=function(e){const[t,r]=u.createPromiseWithResolver();return{terminate:()=>i(this,void 0,void 0,(function*(){y("Terminating worker"),yield e.terminate(),r()})),termination:t}}(e),m=function(e,t){return new a.Observable((r=>{const n=e=>{const t={type:l.WorkerEventType.message,data:e.data};r.next(t)},i=e=>{y("Unhandled promise rejection event in thread:",e);const t={type:l.WorkerEventType.internalError,error:Error(e.reason)};r.next(t)};e.addEventListener("message",n),e.addEventListener("unhandledrejection",i),t.then((()=>{const t={type:l.WorkerEventType.termination};e.removeEventListener("message",n),e.removeEventListener("unhandledrejection",i),r.next(t),r.complete()}))}))}(e,s);if("function"===o.type)return b(h.createProxyFunction(e),e,m,f);if("module"===o.type)return b(h.createProxyModule(e,o.methods),e,m,f);{const e=o.type;throw Error(`Worker init message states unexpected type of expose(): ${e}`)}}))}},54235:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Thread=void 0;const n=r(8258);function i(e){throw Error(e)}t.Thread={errors:e=>e[n.$errors]||i("Error observable not found. Make sure to pass a thread instance as returned by the spawn() promise."),events:e=>e[n.$events]||i("Events observable not found. Make sure to pass a thread instance as returned by the spawn() promise."),terminate:e=>e[n.$terminate]()}},62015:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ObservablePromise=void 0;const n=r(35049),i=()=>{},o=e=>e,s=e=>Promise.resolve().then(e);function a(e){throw e}class c extends n.Observable{constructor(e){super((t=>{const r=this,n=Object.assign(Object.assign({},t),{complete(){t.complete(),r.onCompletion()},error(e){t.error(e),r.onError(e)},next(e){t.next(e),r.onNext(e)}});try{return this.initHasRun=!0,e(n)}catch(e){n.error(e)}})),this.initHasRun=!1,this.fulfillmentCallbacks=[],this.rejectionCallbacks=[],this.firstValueSet=!1,this.state="pending"}onNext(e){this.firstValueSet||(this.firstValue=e,this.firstValueSet=!0)}onError(e){this.state="rejected",this.rejection=e;for(const t of this.rejectionCallbacks)s((()=>t(e)))}onCompletion(){this.state="fulfilled";for(const e of this.fulfillmentCallbacks)s((()=>e(this.firstValue)))}then(e,t){const r=e||o,n=t||a;let i=!1;return new Promise(((e,t)=>{const o=r=>{if(!i){i=!0;try{e(n(r))}catch(e){t(e)}}};return this.initHasRun||this.subscribe({error:o}),"fulfilled"===this.state?e(r(this.firstValue)):"rejected"===this.state?(i=!0,e(n(this.rejection))):(this.fulfillmentCallbacks.push((t=>{try{e(r(t))}catch(e){o(e)}})),void this.rejectionCallbacks.push(o))}))}catch(e){return this.then(void 0,e)}finally(e){const t=e||i;return this.then((e=>(t(),e)),(()=>t()))}static from(e){return function(e){return e&&"function"==typeof e.then}(e)?new c((t=>{e.then((e=>{t.next(e),t.complete()}),(e=>{t.error(e)}))})):super.from(e)}}t.ObservablePromise=c},90531:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.allSettled=void 0,t.allSettled=function(e){return Promise.all(e.map((e=>{const t=e=>({status:"fulfilled",value:e}),r=e=>({status:"rejected",reason:e}),n=Promise.resolve(e);try{return n.then(t,r)}catch(e){return Promise.reject(e)}})))}},53104:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createPromiseWithResolver=void 0;const r=()=>{};t.createPromiseWithResolver=function(){let e,t=!1,n=r;return[new Promise((r=>{t?r(e):n=r})),r=>{t=!0,e=r,n(e)}]}},37381:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultSerializer=t.extendSerializer=void 0,t.extendSerializer=function(e,t){const r=e.deserialize.bind(e),n=e.serialize.bind(e);return{deserialize:e=>t.deserialize(e,r),serialize:e=>t.serialize(e,n)}};const r=e=>Object.assign(Error(e.message),{name:e.name,stack:e.stack}),n=e=>({__error_marker:"$$error",message:e.message,name:e.name,stack:e.stack});t.DefaultSerializer={deserialize(e){return(t=e)&&"object"==typeof t&&"__error_marker"in t&&"$$error"===t.__error_marker?r(e):e;var t},serialize:e=>e instanceof Error?n(e):e}},8258:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.$worker=t.$transferable=t.$terminate=t.$events=t.$errors=void 0,t.$errors=Symbol("thread.errors"),t.$events=Symbol("thread.events"),t.$terminate=Symbol("thread.terminate"),t.$transferable=Symbol("thread.transferable"),t.$worker=Symbol("thread.worker")},88180:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Transfer=t.isTransferDescriptor=void 0;const n=r(8258);t.isTransferDescriptor=function(e){return e&&"object"==typeof e&&e[n.$transferable]},t.Transfer=function(e,t){if(!t){if(!(r=e)||"object"!=typeof r)throw Error();t=[e]}var r;return{[n.$transferable]:!0,send:e,transferables:t}}},56356:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.WorkerEventType=void 0,r(8258),(n=t.WorkerEventType||(t.WorkerEventType={})).internalError="internalError",n.message="message",n.termination="termination"},43229:(e,t)=>{"use strict";var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.WorkerMessageType=t.MasterMessageType=void 0,(n=t.MasterMessageType||(t.MasterMessageType={})).cancel="cancel",n.run="run",(r=t.WorkerMessageType||(t.WorkerMessageType={})).error="error",r.init="init",r.result="result",r.running="running",r.uncaughtError="uncaughtError"},3447:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={isWorkerRuntime:function(){const e="undefined"!=typeof self&&"undefined"!=typeof Window&&self instanceof Window;return!("undefined"==typeof self||!self.postMessage||e)},postMessageToMaster:function(e,t){self.postMessage(e,t)},subscribeToMasterMessages:function(e){const t=t=>{e(t.data)};return self.addEventListener("message",t),()=>{self.removeEventListener("message",t)}}}},11934:function(e,t,r){"use strict";var n=r(34155),i=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.expose=t.isWorkerRuntime=t.Transfer=t.registerSerializer=void 0;const s=o(r(6898)),a=r(22467),c=r(88180),u=r(43229),f=o(r(3447));var l=r(22467);Object.defineProperty(t,"registerSerializer",{enumerable:!0,get:function(){return l.registerSerializer}});var h=r(88180);Object.defineProperty(t,"Transfer",{enumerable:!0,get:function(){return h.Transfer}}),t.isWorkerRuntime=f.default.isWorkerRuntime;let d=!1;const p=new Map,y=e=>e&&e.type===u.MasterMessageType.run,g=e=>s.default(e)||function(e){return e&&"object"==typeof e&&"function"==typeof e.subscribe}(e);function b(e){return c.isTransferDescriptor(e)?{payload:e.send,transferables:e.transferables}:{payload:e,transferables:void 0}}function m(e,t){const{payload:r,transferables:n}=b(t),i={type:u.WorkerMessageType.error,uid:e,error:a.serialize(r)};f.default.postMessageToMaster(i,n)}function v(e,t,r){const{payload:n,transferables:i}=b(r),o={type:u.WorkerMessageType.result,uid:e,complete:!!t||void 0,payload:n};f.default.postMessageToMaster(o,i)}function w(e){try{const t={type:u.WorkerMessageType.uncaughtError,error:a.serialize(e)};f.default.postMessageToMaster(t)}catch(t){console.error("Not reporting uncaught error back to master thread as it occured while reporting an uncaught error already.\nLatest error:",t,"\nOriginal error:",e)}}function E(e,t,r){return i(this,void 0,void 0,(function*(){let n;try{n=t(...r)}catch(t){return m(e,t)}const i=g(n)?"observable":"promise";if(function(e,t){const r={type:u.WorkerMessageType.running,uid:e,resultType:t};f.default.postMessageToMaster(r)}(e,i),g(n)){const t=n.subscribe((t=>v(e,!1,a.serialize(t))),(t=>{m(e,a.serialize(t)),p.delete(e)}),(()=>{v(e,!0),p.delete(e)}));p.set(e,t)}else try{const t=yield n;v(e,!0,a.serialize(t))}catch(t){m(e,a.serialize(t))}}))}t.expose=function(e){if(!f.default.isWorkerRuntime())throw Error("expose() called in the master thread.");if(d)throw Error("expose() called more than once. This is not possible. Pass an object to expose() if you want to expose multiple functions.");if(d=!0,"function"==typeof e)f.default.subscribeToMasterMessages((t=>{y(t)&&!t.method&&E(t.uid,e,t.args.map(a.deserialize))})),function(){const e={type:u.WorkerMessageType.init,exposed:{type:"function"}};f.default.postMessageToMaster(e)}();else{if("object"!=typeof e||!e)throw Error(`Invalid argument passed to expose(). Expected a function or an object, got: ${e}`);f.default.subscribeToMasterMessages((t=>{y(t)&&t.method&&E(t.uid,e[t.method],t.args.map(a.deserialize))})),function(e){const t={type:u.WorkerMessageType.init,exposed:{type:"module",methods:e}};f.default.postMessageToMaster(t)}(Object.keys(e).filter((t=>"function"==typeof e[t])))}f.default.subscribeToMasterMessages((e=>{if((t=e)&&t.type===u.MasterMessageType.cancel){const t=e.uid,r=p.get(t);r&&(r.unsubscribe(),p.delete(t))}var t}))},"undefined"!=typeof self&&"function"==typeof self.addEventListener&&f.default.isWorkerRuntime()&&(self.addEventListener("error",(e=>{setTimeout((()=>w(e.error||e)),250)})),self.addEventListener("unhandledrejection",(e=>{const t=e.reason;t&&"string"==typeof t.message&&setTimeout((()=>w(t)),250)}))),void 0!==n&&"function"==typeof n.on&&f.default.isWorkerRuntime()&&(n.on("uncaughtException",(e=>{setTimeout((()=>w(e)),250)})),n.on("unhandledRejection",(e=>{e&&"string"==typeof e.message&&setTimeout((()=>w(e)),250)})))},10715:(e,t,r)=>{"use strict";const{AbortController:n}="undefined"!=typeof self?self:"undefined"!=typeof window?window:r(28599),i=r(9539);class o extends n{constructor(e){super(),this._ms=e,this._timer=i((()=>this.abort()),e),Object.setPrototypeOf(this,o.prototype)}abort(){return this._timer.clear(),super.abort()}clear(){this._timer.clear()}reset(){this._timer.clear(),this._timer=i((()=>this.abort()),this._ms)}}e.exports=o,e.exports.TimeoutController=o},9539:(e,t,r)=>{"use strict";var n=r(41283);function i(e,t,r){var i=this;this._started=n(),this._rescheduled=0,this._scheduled=t,this._args=r,this._timer=setTimeout((function t(){i._rescheduled>0?(i._scheduled=i._rescheduled-(n()-i._started),i._timer=setTimeout(t,i._scheduled),i._rescheduled=0):e.apply(null,i._args)}),t)}i.prototype.reschedule=function(e){var t=n();return!(t+e-(this._started+this._scheduled)<0||(this._started=t,this._rescheduled=e,0))},i.prototype.clear=function(){clearTimeout(this._timer)},e.exports=function(){if("function"!=typeof arguments[0])throw new Error("callback needed");if("number"!=typeof arguments[1])throw new Error("timeout needed");var e;if(arguments.length>0){e=new Array(arguments.length-2);for(var t=0;t{"use strict";e.exports=function(){return Date.now()}},63700:(e,t,r)=>{"use strict";var n=r(71156),i=r(90793);e.exports=n.bind(null,i)},71156:e=>{"use strict";function t(e){return e>=55296&&e<=56319}function r(e){return e>=56320&&e<=57343}e.exports=function(e,n,i){if("string"!=typeof n)throw new Error("Input must be string");for(var o,s,a=n.length,c=0,u=0;ui)return n.slice(0,u-s.length+1)}return n}},4257:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.discoverAndNotify=t.createMyRoute=t.registerDiscoveryService=void 0;var n=r(90281);t.registerDiscoveryService=function(){for(var e=[],t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(11189);t.default=new n.AvmRunnerBackground({method:"fetch-from-url",baseUrl:"https://fluence.one/registry-demo/",filePaths:{avm:"avm.wasm",marine:"marine-js.wasm"}})},63607:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(o){return function(a){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;s;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return s.label++,{value:o[1],done:!1};case 5:s.label++,n=o[1],o=[0];continue;case 7:o=s.ops.pop(),s.trys.pop();continue;default:if(!((i=(i=s.trys).length>0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])||6!==o[0]&&2!==o[0])){s=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]\n \n\t\t\t'),(r=document.createElement("li")).innerHTML=t,[2,r]}))}))})),[4,Promise.all(t)];case 1:for(r=h.sent(),null==(o=document.getElementById("user-list"))||o.replaceChildren.apply(o,r),s=0,a=e;s{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.instanceOf=t.select=t.not=t.when=void 0;const n=r(98149);t.when=e=>({[n.PatternKind]:n.Guard,[n.Guard]:e}),t.not=e=>({[n.PatternKind]:n.Not,[n.Not]:e}),t.select=function(e){return void 0===e?{[n.PatternKind]:n.Select,[n.Select]:n.AnonymousSelectKey}:{[n.PatternKind]:n.Select,[n.Select]:e}},t.instanceOf=e=>(0,t.when)(function(e){return t=>t instanceof e}(e))},16176:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isMatching=t.match=t.instanceOf=t.select=t.not=t.when=t.__=void 0;const n=r(98149),i=r(29840);Object.defineProperty(t,"when",{enumerable:!0,get:function(){return i.when}}),Object.defineProperty(t,"not",{enumerable:!0,get:function(){return i.not}}),Object.defineProperty(t,"select",{enumerable:!0,get:function(){return i.select}}),Object.defineProperty(t,"instanceOf",{enumerable:!0,get:function(){return i.instanceOf}});const o=r(71586);Object.defineProperty(t,"__",{enumerable:!0,get:function(){return o.__}}),t.match=e=>s(e,[]);const s=(e,t)=>{const r=()=>{const r=t.find((({test:t})=>t(e)));if(!r){let t;try{t=JSON.stringify(e)}catch(r){t=e}throw new Error(`Pattern matching error: no pattern matches value ${t}`)}return r.handler(r.select(e),e)};return{with(...r){const i=r[r.length-1],o=[],a=[];for(let e=0;eBoolean(o.some((t=>c(t,e,((e,t)=>{u[e]=t}))))&&a.every((t=>t(e)))),handler:i,select:e=>Object.keys(u).length?n.AnonymousSelectKey in u?u[n.AnonymousSelectKey]:u:e}]))},when:(r,n)=>s(e,t.concat([{test:r,handler:n,select:e=>e}])),otherwise:r=>s(e,t.concat([{test:()=>!0,handler:r,select:e=>e}])).run(),exhaustive:()=>r(),run:r}},a=e=>Boolean(e&&"object"==typeof e),c=(e,t,r)=>{if(a(e)){if((i=e)&&i[n.PatternKind]===n.Guard)return Boolean(e[n.Guard](t));if((e=>e&&e[n.PatternKind]===n.Select)(e))return r(e[n.Select],t),!0;if((e=>e&&e[n.PatternKind]===n.Not)(e))return!c(e[n.Not],t,r);if(!a(t))return!1;if(Array.isArray(e)){if(!Array.isArray(t))return!1;if(1===e.length){const n={},i=(e,t)=>{n[e]=(n[e]||[]).concat([t])},o=t.every((t=>c(e[0],t,i)));return o&&Object.keys(n).forEach((e=>r(e,n[e]))),o}return e.length===t.length&&e.every(((e,n)=>c(e,t[n],r)))}if(e instanceof Map)return t instanceof Map&&[...e.keys()].every((n=>c(e.get(n),t.get(n),r)));if(e instanceof Set){if(!(t instanceof Set))return!1;if(0===e.size)return 0===t.size;if(1===e.size){const[n]=[...e.values()];return Object.values(o.__).includes(n)?c([n],[...t.values()],r):t.has(n)}return[...e.values()].every((e=>t.has(e)))}return Object.keys(e).every((n=>n in t&&c(e[n],t[n],r)))}var i;return t===e};t.isMatching=function(...e){if(1===e.length){const[t]=e;return e=>c(t,e,(()=>{}))}if(2===e.length){const[t,r]=e;return c(t,r,(()=>{}))}throw new Error(`isMatching wasn't given enough arguments: expected 1 or 2, received ${e.length}.`)}},98149:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnonymousSelectKey=t.Select=t.Not=t.Guard=t.PatternKind=void 0,t.PatternKind=Symbol("@ts-pattern/pattern-kind"),t.Guard=Symbol("@ts-pattern/guard"),t.Not=Symbol("@ts-pattern/not"),t.Select=Symbol("@ts-pattern/select"),t.AnonymousSelectKey="@ts-pattern/__anonymous-select-key"},71586:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.__=void 0;const n=r(29840),i=(0,n.when)((function(e){return!0})),o=(0,n.when)((function(e){return"string"==typeof e})),s=(0,n.when)((function(e){return"number"==typeof e})),a=(0,n.when)((function(e){return Number.isNaN(e)})),c=(0,n.when)((function(e){return"boolean"==typeof e})),u=(0,n.when)((function(e){return null==e}));t.__=Object.assign(i,{string:o,number:s,NaN:a,boolean:c,nullish:u})},90793:e=>{"use strict";function t(e){return e>=55296&&e<=56319}function r(e){return e>=56320&&e<=57343}e.exports=function(e){if("string"!=typeof e)throw new Error("Input must be string");for(var n=e.length,i=0,o=null,s=null,a=0;a=128&&o<=2047?i+=2:o>=2048&&o<=65535&&(i+=3),s=o;return i}},21614:(e,t,r)=>{"use strict";r.r(t),r.d(t,{NIL:()=>k,parse:()=>g,stringify:()=>f,v1:()=>y,v3:()=>T,v4:()=>I,v5:()=>R,validate:()=>a,version:()=>B});var n="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto),i=new Uint8Array(16);function o(){if(!n)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return n(i)}const s=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,a=function(e){return"string"==typeof e&&s.test(e)};for(var c=[],u=0;u<256;++u)c.push((u+256).toString(16).substr(1));const f=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=(c[e[t+0]]+c[e[t+1]]+c[e[t+2]]+c[e[t+3]]+"-"+c[e[t+4]]+c[e[t+5]]+"-"+c[e[t+6]]+c[e[t+7]]+"-"+c[e[t+8]]+c[e[t+9]]+"-"+c[e[t+10]]+c[e[t+11]]+c[e[t+12]]+c[e[t+13]]+c[e[t+14]]+c[e[t+15]]).toLowerCase();if(!a(r))throw TypeError("Stringified UUID is invalid");return r};var l,h,d=0,p=0;const y=function(e,t,r){var n=t&&r||0,i=t||new Array(16),s=(e=e||{}).node||l,a=void 0!==e.clockseq?e.clockseq:h;if(null==s||null==a){var c=e.random||(e.rng||o)();null==s&&(s=l=[1|c[0],c[1],c[2],c[3],c[4],c[5]]),null==a&&(a=h=16383&(c[6]<<8|c[7]))}var u=void 0!==e.msecs?e.msecs:Date.now(),y=void 0!==e.nsecs?e.nsecs:p+1,g=u-d+(y-p)/1e4;if(g<0&&void 0===e.clockseq&&(a=a+1&16383),(g<0||u>d)&&void 0===e.nsecs&&(y=0),y>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");d=u,p=y,h=a;var b=(1e4*(268435455&(u+=122192928e5))+y)%4294967296;i[n++]=b>>>24&255,i[n++]=b>>>16&255,i[n++]=b>>>8&255,i[n++]=255&b;var m=u/4294967296*1e4&268435455;i[n++]=m>>>8&255,i[n++]=255&m,i[n++]=m>>>24&15|16,i[n++]=m>>>16&255,i[n++]=a>>>8|128,i[n++]=255&a;for(var v=0;v<6;++v)i[n+v]=s[v];return t||f(i)},g=function(e){if(!a(e))throw TypeError("Invalid UUID");var t,r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r};function b(e,t,r){function n(e,n,i,o){if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));for(var t=[],r=0;r>>9<<4)+1}function v(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function w(e,t,r,n,i,o){return v((s=v(v(t,e),v(n,o)))<<(a=i)|s>>>32-a,r);var s,a}function E(e,t,r,n,i,o,s){return w(t&r|~t&n,e,t,i,o,s)}function _(e,t,r,n,i,o,s){return w(t&n|r&~n,e,t,i,o,s)}function S(e,t,r,n,i,o,s){return w(t^r^n,e,t,i,o,s)}function A(e,t,r,n,i,o,s){return w(r^(t|~n),e,t,i,o,s)}const T=b("v3",48,(function(e){if("string"==typeof e){var t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(var r=0;r>5]>>>i%32&255,s=parseInt(n.charAt(o>>>4&15)+n.charAt(15&o),16);t.push(s)}return t}(function(e,t){e[t>>5]|=128<>5]|=(255&e[n/8])<>>32-t}const R=b("v5",80,(function(e){var t=[1518500249,1859775393,2400959708,3395469782],r=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof e){var n=unescape(encodeURIComponent(e));e=[];for(var i=0;i>>0;v=m,m=b,b=P(g,30)>>>0,g=y,y=_}r[0]=r[0]+y>>>0,r[1]=r[1]+g>>>0,r[2]=r[2]+b>>>0,r[3]=r[3]+m>>>0,r[4]=r[4]+v>>>0}return[r[0]>>24&255,r[0]>>16&255,r[0]>>8&255,255&r[0],r[1]>>24&255,r[1]>>16&255,r[1]>>8&255,255&r[1],r[2]>>24&255,r[2]>>16&255,r[2]>>8&255,255&r[2],r[3]>>24&255,r[3]>>16&255,r[3]>>8&255,255&r[3],r[4]>>24&255,r[4]>>16&255,r[4]>>8&255,255&r[4]]})),k="00000000-0000-0000-0000-000000000000",B=function(e){if(!a(e))throw TypeError("Invalid UUID");return parseInt(e.substr(14,1),16)}},26988:e=>{e.exports=function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i}},1312:e=>{e.exports=function e(r,n,i){n=n||[];for(var o=i=i||0;r>=t;)n[i++]=255&r|128,r/=128;for(;-128&r;)n[i++]=255&r|128,r>>>=7;return n[i]=0|r,e.bytes=i-o+1,n};var t=Math.pow(2,31)},94676:(e,t,r)=>{e.exports={encode:r(1312),decode:r(26988),encodingLength:r(10082)}},10082:e=>{var t=Math.pow(2,7),r=Math.pow(2,14),n=Math.pow(2,21),i=Math.pow(2,28),o=Math.pow(2,35),s=Math.pow(2,42),a=Math.pow(2,49),c=Math.pow(2,56),u=Math.pow(2,63);e.exports=function(e){return e{"use strict";var n=r(34155);const i=r(59134),o="object"==typeof window&&"object"==typeof document&&9===document.nodeType,s=i(),a=o&&!s,c=s&&!o,u=s&&o,f=void 0!==n&&void 0!==n.release&&"node"===n.release.name&&!s,l="function"==typeof importScripts&&"undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,h=void 0!==n&&void 0!==n.env&&!1;e.exports={isTest:h,isElectron:s,isElectronMain:c,isElectronRenderer:u,isNode:f,isBrowser:a,isWebWorker:l,isEnvWithDom:o}},35883:()=>{},46601:()=>{},89214:()=>{},5696:()=>{},89408:()=>{},57600:()=>{},39370:()=>{},25819:()=>{},82233:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Key:()=>c});var n=r(92263),i=r(52217);const o="/",s=(new TextEncoder).encode(o),a=s[0];class c{constructor(e,t){if("string"==typeof e)this._buf=(0,i.fromString)(e);else{if(!(e instanceof Uint8Array))throw new Error("Invalid key, should be String of Uint8Array");this._buf=e}if(null==t&&(t=!0),t&&this.clean(),0===this._buf.byteLength||this._buf[0]!==a)throw new Error("Invalid key")}toString(e="utf8"){return(0,n.toString)(this._buf,e)}uint8Array(){return this._buf}get[Symbol.toStringTag](){return`Key(${this.toString()})`}static withNamespaces(e){return new c(e.join(o))}static random(){return new c(((e=21)=>{let t="",r=crypto.getRandomValues(new Uint8Array(e));for(;e--;){let n=63&r[e];t+=n<36?n.toString(36):n<62?(n-26).toString(36).toUpperCase():n<63?"_":"-"}return t})().replace(/-/g,""))}static asKey(e){return e instanceof Uint8Array||"string"==typeof e?new c(e):e.uint8Array?new c(e.uint8Array()):null}clean(){if(this._buf&&0!==this._buf.byteLength||(this._buf=s),this._buf[0]!==a){const e=new Uint8Array(this._buf.byteLength+1);e.fill(a,0,1),e.set(this._buf,1),this._buf=e}for(;this._buf.byteLength>1&&this._buf[this._buf.byteLength-1]===a;)this._buf=this._buf.subarray(0,-1)}less(e){const t=this.list(),r=e.list();for(let e=0;ei)return!1}return t.lengthe.namespaces())),[].concat(...t))]);var t}}},89880:(e,t,r)=>{"use strict";r.d(t,{kU:()=>f,Dp:()=>u,ET:()=>l});var n=r(95934);class i{constructor(e,t,r){this.name=e,this.prefix=t,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class o{constructor(e,t,r){this.name=e,this.prefix=t,this.baseDecode=r}decode(e){if("string"==typeof e){if(e[0]===this.prefix)return this.baseDecode(e.slice(1));throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`)}throw Error("Can only multibase decode strings")}or(e){return a(this,e)}}class s{constructor(e){this.decoders=e}or(e){return a(this,e)}decode(e){const t=e[0],r=this.decoders[t];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const a=(e,t)=>new s({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class c{constructor(e,t,r,n){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=n,this.encoder=new i(e,t,r),this.decoder=new o(e,t,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const u=({name:e,prefix:t,encode:r,decode:n})=>new c(e,t,r,n),f=({prefix:e,name:t,alphabet:r})=>{const{encode:i,decode:o}=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n>>0,s=new Uint8Array(o);e[t];){var f=r[e.charCodeAt(t)];if(255===f)return;for(var l=0,h=o-1;(0!==f||l>>0,s[h]=f%256>>>0,f=f/256>>>0;if(0!==f)throw new Error("Non-zero carry");i=l,t++}if(" "!==e[t]){for(var d=o-i;d!==o&&0===s[d];)d++;for(var p=new Uint8Array(n+(o-d)),y=n;d!==o;)p[y++]=s[d++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,o=t.length;i!==o&&0===t[i];)i++,r++;for(var s=(o-i)*f+1>>>0,u=new Uint8Array(s);i!==o;){for(var l=t[i],h=0,d=s-1;(0!==l||h>>0,u[d]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");n=h,i++}for(var p=s-n;p!==s&&0===u[p];)p++;for(var y=c.repeat(r);p(0,n.oQ)(o(e))})},l=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>u({prefix:t,name:e,encode:e=>((e,t,r)=>{const n="="===t[t.length-1],i=(1<r;)s-=r,o+=t[i&a>>s];if(s&&(o+=t[i&a<((e,t,r,n)=>{const i={};for(let e=0;e=8&&(a-=8,s[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return s})(t,n,r,e)})},84835:(e,t,r)=>{"use strict";r.r(t),r.d(t,{base16:()=>i,base16upper:()=>o});var n=r(89880);const i=(0,n.ET)({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),o=(0,n.ET)({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})},22817:(e,t,r)=>{"use strict";r.r(t),r.d(t,{base32:()=>i,base32upper:()=>o,base32pad:()=>s,base32padupper:()=>a,base32hex:()=>c,base32hexupper:()=>u,base32hexpad:()=>f,base32hexpadupper:()=>l,base32z:()=>h});var n=r(89880);const i=(0,n.ET)({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),o=(0,n.ET)({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),s=(0,n.ET)({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),a=(0,n.ET)({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),c=(0,n.ET)({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),u=(0,n.ET)({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),f=(0,n.ET)({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),l=(0,n.ET)({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),h=(0,n.ET)({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})},98441:(e,t,r)=>{"use strict";r.r(t),r.d(t,{base36:()=>i,base36upper:()=>o});var n=r(89880);const i=(0,n.kU)({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),o=(0,n.kU)({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})},99086:(e,t,r)=>{"use strict";r.r(t),r.d(t,{base58btc:()=>i,base58flickr:()=>o});var n=r(89880);const i=(0,n.kU)({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),o=(0,n.kU)({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})},9885:(e,t,r)=>{"use strict";r.r(t),r.d(t,{base64:()=>i,base64pad:()=>o,base64url:()=>s,base64urlpad:()=>a});var n=r(89880);const i=(0,n.ET)({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),o=(0,n.ET)({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),s=(0,n.ET)({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),a=(0,n.ET)({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})},95934:(e,t,r)=>{"use strict";r.d(t,{fS:()=>n,oQ:()=>i,mL:()=>o,BB:()=>s}),new Uint8Array(0);const n=(e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")},o=e=>(new TextEncoder).encode(e),s=e=>(new TextDecoder).decode(e)},81362:(e,t,r)=>{"use strict";r.r(t),r.d(t,{CID:()=>c});var n=r(4714),i=r(28924),o=r(99086),s=r(22817),a=r(95934);class c{constructor(e,t,r,n){this.code=t,this.version=e,this.multihash=r,this.bytes=n,this.byteOffset=n.byteOffset,this.byteLength=n.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:b,byteLength:b,code:g,version:g,multihash:g,bytes:g,_baseCache:b,asCID:b})}toV0(){if(0===this.version)return this;{const{code:e,multihash:t}=this;if(e!==h)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==d)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return c.createV0(t)}}toV1(){switch(this.version){case 0:{const{code:e,digest:t}=this.multihash,r=i.create(e,t);return c.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&i.equals(this.multihash,e.multihash)}toString(e){const{bytes:t,version:r,_baseCache:n}=this;return 0===r?f(t,n,e||o.base58btc.encoder):l(t,n,e||s.base32.encoder)}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(e){return m(/^0\.0/,v),!(!e||!e[y]&&e.asCID!==e)}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof c)return e;if(null!=e&&e.asCID===e){const{version:t,code:r,multihash:n,bytes:i}=e;return new c(t,r,n,i||p(t,r,n.bytes))}if(null!=e&&!0===e[y]){const{version:t,multihash:r,code:n}=e,o=i.decode(r);return c.create(t,n,o)}return null}static create(e,t,r){if("number"!=typeof t)throw new Error("String codecs are no longer supported");switch(e){case 0:if(t!==h)throw new Error(`Version 0 CID must use dag-pb (code: ${h}) block encoding`);return new c(e,t,r,r.bytes);case 1:{const n=p(e,t,r.bytes);return new c(e,t,r,n)}default:throw new Error("Invalid version")}}static createV0(e){return c.create(0,h,e)}static createV1(e,t){return c.create(1,e,t)}static decode(e){const[t,r]=c.decodeFirst(e);if(r.length)throw new Error("Incorrect length");return t}static decodeFirst(e){const t=c.inspectBytes(e),r=t.size-t.multihashSize,n=(0,a.oQ)(e.subarray(r,r+t.multihashSize));if(n.byteLength!==t.multihashSize)throw new Error("Incorrect length");const o=n.subarray(t.multihashSize-t.digestSize),s=new i.Digest(t.multihashCode,t.digestSize,o,n);return[0===t.version?c.createV0(s):c.createV1(t.codec,s),e.subarray(t.size)]}static inspectBytes(e){let t=0;const r=()=>{const[r,i]=n.Jx(e.subarray(t));return t+=i,r};let i=r(),o=h;if(18===i?(i=0,t=0):1===i&&(o=r()),0!==i&&1!==i)throw new RangeError(`Invalid CID version ${i}`);const s=t,a=r(),c=r(),u=t+c;return{version:i,codec:o,multihashCode:a,digestSize:c,multihashSize:u-s,size:u}}static parse(e,t){const[r,n]=u(e,t),i=c.decode(n);return i._baseCache.set(r,e),i}}const u=(e,t)=>{switch(e[0]){case"Q":{const r=t||o.base58btc;return[o.base58btc.prefix,r.decode(`${o.base58btc.prefix}${e}`)]}case o.base58btc.prefix:{const r=t||o.base58btc;return[o.base58btc.prefix,r.decode(e)]}case s.base32.prefix:{const r=t||s.base32;return[s.base32.prefix,r.decode(e)]}default:if(null==t)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}},f=(e,t,r)=>{const{prefix:n}=r;if(n!==o.base58btc.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);const i=t.get(n);if(null==i){const i=r.encode(e).slice(1);return t.set(n,i),i}return i},l=(e,t,r)=>{const{prefix:n}=r,i=t.get(n);if(null==i){const i=r.encode(e);return t.set(n,i),i}return i},h=112,d=18,p=(e,t,r)=>{const i=n.P$(e),o=i+n.P$(t),s=new Uint8Array(o+r.byteLength);return n.mL(e,s,0),n.mL(t,s,i),s.set(r,o),s},y=Symbol.for("@ipld/js-cid/CID"),g={writable:!1,configurable:!1,enumerable:!0},b={writable:!1,enumerable:!1,configurable:!1},m=(e,t)=>{if(!e.test("0.0.0-dev"))throw new Error(t);console.warn(t)},v="CID.isCID(v) is deprecated and will be removed in the next major release.\nFollowing code pattern:\n\nif (CID.isCID(value)) {\n doSomethingWithCID(value)\n}\n\nIs replaced with:\n\nconst cid = CID.asCID(value)\nif (cid) {\n // Make sure to use cid instead of value\n doSomethingWithCID(cid)\n}\n"},28924:(e,t,r)=>{"use strict";r.r(t),r.d(t,{create:()=>o,decode:()=>s,equals:()=>a,Digest:()=>c});var n=r(95934),i=r(4714);const o=(e,t)=>{const r=t.byteLength,n=i.P$(e),o=n+i.P$(r),s=new Uint8Array(o+r);return i.mL(e,s,0),i.mL(r,s,n),s.set(t,o),new c(e,r,t,s)},s=e=>{const t=(0,n.oQ)(e),[r,o]=i.Jx(t),[s,a]=i.Jx(t.subarray(o)),u=t.subarray(o+a);if(u.byteLength!==s)throw new Error("Incorrect length");return new c(r,s,u,t)},a=(e,t)=>e===t||e.code===t.code&&e.size===t.size&&(0,n.fS)(e.bytes,t.bytes);class c{constructor(e,t,r,n){this.code=e,this.size=t,this.digest=r,this.bytes=n}}},7225:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(28924);const i=({name:e,code:t,encode:r})=>new o(e,t,r);class o{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?n.create(this.code,t):t.then((e=>n.create(this.code,e)))}throw Error("Unknown type, must be binary type")}}},78103:(e,t,r)=>{"use strict";r.r(t),r.d(t,{identity:()=>s});var n=r(95934),i=r(28924);const o=n.oQ,s={code:0,name:"identity",encode:o,digest:e=>i.create(0,o(e))}},56155:(e,t,r)=>{"use strict";r.r(t),r.d(t,{sha256:()=>o,sha512:()=>s});var n=r(7225);const i=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),o=(0,n.D)({name:"sha2-256",code:18,encode:i("SHA-256")}),s=(0,n.D)({name:"sha2-512",code:19,encode:i("SHA-512")})},4714:(e,t,r)=>{"use strict";r.d(t,{Jx:()=>p,mL:()=>y,P$:()=>g});var n=Math.pow(2,31),i=Math.pow(2,7),o=Math.pow(2,14),s=Math.pow(2,21),a=Math.pow(2,28),c=Math.pow(2,35),u=Math.pow(2,42),f=Math.pow(2,49),l=Math.pow(2,56),h=Math.pow(2,63);const d={encode:function e(t,r,i){r=r||[];for(var o=i=i||0;t>=n;)r[i++]=255&t|128,t/=128;for(;-128&t;)r[i++]=255&t|128,t>>>=7;return r[i]=0|t,e.bytes=i-o+1,r},decode:function e(t,r){var n,i=0,o=0,s=r=r||0,a=t.length;do{if(s>=a)throw e.bytes=0,new RangeError("Could not decode varint");n=t[s++],i+=o<28?(127&n)<=128);return e.bytes=s-r,i},encodingLength:function(e){return e[d.decode(e),d.decode.bytes],y=(e,t,r=0)=>(d.encode(e,t,r),t),g=e=>d.encodingLength(e)},20605:(e,t,r)=>{"use strict";function n(e,t){t||(t=e.reduce(((e,t)=>e+t.length),0));const r=new Uint8Array(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return r}r.r(t),r.d(t,{concat:()=>n})},19588:(e,t,r)=>{"use strict";function n(e,t){if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;rn})},52217:(e,t,r)=>{"use strict";r.r(t),r.d(t,{fromString:()=>i});var n=r(32280);function i(e,t="utf8"){const r=n.Z[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return r.decoder.decode(`${r.prefix}${e}`)}},92263:(e,t,r)=>{"use strict";r.r(t),r.d(t,{toString:()=>i});var n=r(32280);function i(e,t="utf8"){const r=n.Z[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return r.encoder.encode(e).substring(1)}},32280:(e,t,r)=>{"use strict";r.d(t,{Z:()=>O});var n={};r.r(n),r.d(n,{identity:()=>l});var i={};r.r(i),r.d(i,{base2:()=>h});var o={};r.r(o),r.d(o,{base8:()=>d});var s={};r.r(s),r.d(s,{base10:()=>p});var a={};r.r(a),r.d(a,{code:()=>E,decode:()=>S,encode:()=>_,name:()=>w});var c={};r.r(c),r.d(c,{code:()=>C,decode:()=>R,encode:()=>P,name:()=>I});var u=r(89880),f=r(95934);const l=(0,u.Dp)({prefix:"\0",name:"identity",encode:e=>(0,f.BB)(e),decode:e=>(0,f.mL)(e)}),h=(0,u.ET)({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),d=(0,u.ET)({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),p=(0,u.kU)({prefix:"9",name:"base10",alphabet:"0123456789"});var y=r(84835),g=r(22817),b=r(98441),m=r(99086),v=r(9885);r(56155),r(78103);const w="raw",E=85,_=e=>(0,f.oQ)(e),S=e=>(0,f.oQ)(e),A=new TextEncoder,T=new TextDecoder,I="json",C=512,P=e=>A.encode(JSON.stringify(e)),R=e=>JSON.parse(T.decode(e));r(81362),r(4714),r(7225),r(28924);const k={...n,...i,...o,...s,...y,...g,...b,...m,...v};function B(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}const x=B("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),M=B("ascii","a",(e=>{let t="a";for(let r=0;r{e=e.substring(1);const t=new Uint8Array(e.length);for(let r=0;r{"use strict";e.exports={i8:"6.5.4"}},28362:e=>{"use strict";e.exports=JSON.parse('{"name":"libp2p","version":"0.33.0","description":"JavaScript implementation of libp2p, a modular peer to peer network stack","leadMaintainer":"Jacob Heun ","main":"src/index.js","types":"dist/src/index.d.ts","typesVersions":{"*":{"src/*":["dist/src/*","dist/src/*/index"]}},"files":["dist","src"],"scripts":{"lint":"aegir lint","build":"aegir build","build:proto":"npm run build:proto:circuit && npm run build:proto:identify && npm run build:proto:plaintext && npm run build:proto:address-book && npm run build:proto:proto-book && npm run build:proto:peer-record && npm run build:proto:envelope","build:proto:circuit":"pbjs -t static-module -w commonjs -r libp2p-circuit --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/circuit/protocol/index.js ./src/circuit/protocol/index.proto","build:proto:identify":"pbjs -t static-module -w commonjs -r libp2p-identify --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/identify/message.js ./src/identify/message.proto","build:proto:plaintext":"pbjs -t static-module -w commonjs -r libp2p-plaintext --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/insecure/proto.js ./src/insecure/proto.proto","build:proto:address-book":"pbjs -t static-module -w commonjs -r libp2p-address-book --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/peer-store/persistent/pb/address-book.js ./src/peer-store/persistent/pb/address-book.proto","build:proto:proto-book":"pbjs -t static-module -w commonjs -r libp2p-proto-book --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/peer-store/persistent/pb/proto-book.js ./src/peer-store/persistent/pb/proto-book.proto","build:proto:peer-record":"pbjs -t static-module -w commonjs -r libp2p-peer-record --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/record/peer-record/peer-record.js ./src/record/peer-record/peer-record.proto","build:proto:envelope":"pbjs -t static-module -w commonjs -r libp2p-envelope --force-number --no-verify --no-delimited --no-create --no-beautify --no-defaults --lint eslint-disable -o src/record/envelope/envelope.js ./src/record/envelope/envelope.proto","build:proto-types":"npm run build:proto-types:circuit && npm run build:proto-types:identify && npm run build:proto-types:plaintext && npm run build:proto-types:address-book && npm run build:proto-types:proto-book && npm run build:proto-types:peer-record && npm run build:proto-types:envelope","build:proto-types:circuit":"pbts -o src/circuit/protocol/index.d.ts src/circuit/protocol/index.js","build:proto-types:identify":"pbts -o src/identify/message.d.ts src/identify/message.js","build:proto-types:plaintext":"pbts -o src/insecure/proto.d.ts src/insecure/proto.js","build:proto-types:address-book":"pbts -o src/peer-store/persistent/pb/address-book.d.ts src/peer-store/persistent/pb/address-book.js","build:proto-types:proto-book":"pbts -o src/peer-store/persistent/pb/proto-book.d.ts src/peer-store/persistent/pb/proto-book.js","build:proto-types:peer-record":"pbts -o src/record/peer-record/peer-record.d.ts src/record/peer-record/peer-record.js","build:proto-types:envelope":"pbts -o src/record/envelope/envelope.d.ts src/record/envelope/envelope.js","test":"aegir test","test:ts":"aegir build --no-bundle && npm run test --prefix test/ts-use","test:node":"aegir test -t node -f \\"./test/**/*.{node,spec}.js\\"","test:browser":"aegir test -t browser","test:examples":"cd examples && npm run test:all","prepare":"aegir build --no-bundle","release":"aegir release -t node -t browser","release-minor":"aegir release --type minor -t node -t browser","release-major":"aegir release --type major -t node -t browser","coverage":"nyc --reporter=text --reporter=lcov npm run test:node"},"repository":{"type":"git","url":"https://github.com/libp2p/js-libp2p.git"},"keywords":["libp2p","network","p2p","peer","peer-to-peer","IPFS"],"bugs":{"url":"https://github.com/libp2p/js-libp2p/issues"},"homepage":"https://libp2p.io","license":"MIT","engines":{"node":">=14.0.0"},"browser":{"@motrix/nat-api":false},"eslintConfig":{"extends":"ipfs","ignorePatterns":["!.aegir.js","test/ts-use"]},"dependencies":{"abortable-iterator":"^3.0.0","@motrix/nat-api":"^0.3.1","@vascosantos/moving-average":"^1.1.0","abort-controller":"^3.0.0","aggregate-error":"^3.1.0","any-signal":"^2.1.1","bignumber.js":"^9.0.1","class-is":"^1.1.0","debug":"^4.3.1","err-code":"^3.0.0","es6-promisify":"^7.0.0","events":"^3.3.0","hashlru":"^2.3.0","interface-datastore":"^6.0.2","it-all":"^1.0.4","it-buffer":"^0.1.2","it-drain":"^1.0.3","it-filter":"^1.0.1","it-first":"^1.0.4","it-handshake":"^2.0.0","it-length-prefixed":"^5.0.2","it-map":"^1.0.4","it-merge":"^1.0.0","it-pipe":"^1.1.0","it-take":"^1.0.0","libp2p-crypto":"^0.19.4","libp2p-interfaces":"^1.0.0","libp2p-utils":"^0.4.0","mafmt":"^10.0.0","merge-options":"^3.0.4","multiaddr":"^10.0.0","multiformats":"^9.0.0","multistream-select":"^2.0.0","mutable-proxy":"^1.0.0","node-forge":"^0.10.0","p-any":"^3.0.0","p-fifo":"^1.0.0","p-retry":"^4.4.0","p-settle":"^4.1.1","peer-id":"^0.15.0","private-ip":"^2.1.0","protobufjs":"^6.10.2","retimer":"^3.0.0","sanitize-filename":"^1.6.3","set-delayed-interval":"^1.0.0","streaming-iterables":"^6.0.0","timeout-abort-controller":"^1.1.1","uint8arrays":"^3.0.0","varint":"^6.0.0","wherearewe":"^1.0.0","xsalsa20":"^1.1.0"},"devDependencies":{"@chainsafe/libp2p-noise":"^4.0.0","@nodeutils/defaults-deep":"^1.1.0","@types/es6-promisify":"^6.0.0","@types/node":"^16.0.1","@types/node-forge":"^0.10.1","@types/varint":"^6.0.0","aegir":"^33.1.1","buffer":"^6.0.3","datastore-core":"^6.0.7","delay":"^5.0.0","interop-libp2p":"^0.4.0","into-stream":"^7.0.0","ipfs-http-client":"^52.0.2","it-concat":"^2.0.0","it-pair":"^1.0.0","it-pushable":"^1.4.0","libp2p":".","libp2p-bootstrap":"^0.13.0","libp2p-delegated-content-routing":"^0.11.0","libp2p-delegated-peer-routing":"^0.10.0","libp2p-floodsub":"^0.27.0","libp2p-gossipsub":"^0.11.0","libp2p-interfaces-compliance-tests":"^1.0.0","libp2p-kad-dht":"^0.24.2","libp2p-mdns":"^0.17.0","libp2p-mplex":"^0.10.1","libp2p-tcp":"^0.17.0","libp2p-webrtc-star":"^0.23.0","libp2p-websockets":"^0.16.0","nock":"^13.0.3","p-defer":"^3.0.0","p-times":"^3.0.0","p-wait-for":"^3.2.0","rimraf":"^3.0.2","sinon":"^11.1.1","util":"^0.12.3"},"contributors":["Vasco Santos ","David Dias ","Jacob Heun ","Alex Potsides ","Alan Shaw ","Cayman ","Pedro Teixeira ","Friedel Ziegelmayer ","Maciej Krüger ","Hugo Dias ","Chris Dostert ","dirkmc ","Volker Mische ","zeim839 <50573884+zeim839@users.noreply.github.com>","Richard Littauer ","a1300 ","Ryan Bell ","ᴠɪᴄᴛᴏʀ ʙᴊᴇʟᴋʜᴏʟᴍ ","Franck Royer ","Thomas Eizinger ","Giovanni T. Parra ","acolytec3 <17355484+acolytec3@users.noreply.github.com>","Elven ","Andrew Nesbitt ","Samlior ","Didrik Nordström ","RasmusErik Voel Jensen ","Robert Kiel ","Smite Chow ","Soeren ","Sönke Hahn ","TJKoury ","Tiago Alves ","XiaoZhang ","Yusef Napora ","Zane Starr ","ebinks ","Aditya Bose <13054902+adbose@users.noreply.github.com>","isan_rivkin ","mayerwin ","mcclure ","phillmac ","robertkiel ","shresthagrawal <34920931+shresthagrawal@users.noreply.github.com>","swedneck <40505480+swedneck@users.noreply.github.com>","greenSnot ","Aleksei ","Bernd Strehl ","Chris Bratlien ","Cindy Wu ","Daijiro Wachi ","Diogo Silva ","Dmitriy Ryajov ","Ethan Lam ","Fei Liu ","Felipe Martins ","Florian-Merle ","Francis Gulotta ","Guy Sviry <32539816+guysv@users.noreply.github.com>","Henrique Dias ","Irakli Gozalishvili ","Joel Gustafson ","John Rees ","João Santos ","Julien Bouquillon ","Kevin Kwok ","Kevin Lacker ","Lars Gierth ","Leask Wong ","Marcin Tojek ","Michael Burns <5170+mburns@users.noreply.github.com>","Miguel Mota ","Nuno Nogueira ","Philipp Muens "]}')}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t},__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),__webpack_require__.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var __webpack_exports__=__webpack_require__(63607)})(); \ No newline at end of file diff --git a/docs/main.js.LICENSE.txt b/docs/main.js.LICENSE.txt new file mode 100644 index 0000000..d14958c --- /dev/null +++ b/docs/main.js.LICENSE.txt @@ -0,0 +1,36 @@ +/*! + * Determine if an object is a Buffer + * + * @author Feross Aboukhadijeh + * @license MIT + */ + +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */ + +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ + +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ + +/*! noble-ed25519 - MIT License (c) Paul Miller (paulmillr.com) */ + +/*! noble-secp256k1 - MIT License (c) Paul Miller (paulmillr.com) */ + +/*! safe-buffer. MIT License. Feross Aboukhadijeh */ diff --git a/docs/marine-js.wasm b/docs/marine-js.wasm new file mode 100644 index 0000000000000000000000000000000000000000..87c3e016f1e6f66dfd0f7a8d15f558550702a880 GIT binary patch literal 414514 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